

.relative {
    position: relative;
}


.head_ttl {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-30%) translateX(-50%);
	transform: translateY(-30%) translateX(-50%);
	}
	
.head_ttl span{
	line-height: 1.2em;
	font-size: 34px;
	color: #FFF;
	border: #FFF double 1px;
	padding: 20px;
	text-shadow: 1px 1px 3px #000; 
	box-shadow: 1px 1px 3px #000; 
	
	
	background-color: rgba(53,47,29,0.40)
}

.head_sub_ttl {
	text-align: center;
	padding: 2em 0em;
	text-shadow: 0px 0px 3px #000000, 1px 1px 3px #000000, 1px 1px 3px #000000; 
}


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

.head_ttl {
	width: 100%;
	text-align: center;
	}
	
.head_ttl span{
	line-height: 1.2em;
	font-size: 26px;
	color: #FFF;
	border: #FFF double 1px;
	padding: 20px;
}

.head_sub_ttl {
	text-align: center;
	padding: 2em 0em;
}

}






.contents2 {
	width: 98%;
}




.textarea {
	width: 95%;
	margin: 5px auto;
	font-weight: normal;
	}







/*　　　　メニュー用横幅
------------------------------------------------------------------------------------------*/




#nav-box {
	max-width: 1200px;
	margin: 10px auto;
	padding: 0px 5px 10px 5px; 
}


@media screen and (max-width: 960px)
and (max-width: 480px){
	
#nav-box {
	width: 100%;
}
	
}








/*　 撮影メニュー一覧用
------------------------------------------------------------------------------------------*/


.shooting-ttl {
	background: linear-gradient(transparent 60%, rgba(255,139,70,0.2) 0%);
	margin-bottom: 20px;
	font-size: 24px;
	font-weight: bold;
}




.grid-width {
	max-width: 1200px;
	margin: 50px auto;
}

.grid-area {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
}

.grid-contents {
  border-radius: 10px;
  padding: 15px;
  text-align: center;
}

.grid-contents img {
  max-width: 100%;
  height: auto;
	border-radius: 10px;
}


.grid-contents a:hover{
	opacity: 0.7;
}


.grid-contents p {
  text-align: left;
}











/*　　　　斜め背景
------------------------------------------------------------------------------------------*/

.se-container{
	display: block;
	width: 100%;
	overflow: hidden;
	padding-top: 100px;
}
.se-slope{
	margin: 0 -50px;
	-webkit-transform-origin: left center;
	-moz-transform-origin: left center;
	-o-transform-origin: left center;
	-ms-transform-origin: left center;
	transform-origin: left center;
}


.se-slope:nth-child(odd){
	background: #FFFFFF;
	-webkit-transform: rotate(3deg);
	-moz-transform: rotate(3deg);
	-o-transform: rotate(3deg);
	-ms-transform: rotate(3deg);
	transform: rotate(3deg);
	margin-top: -200px;
}

.se-slope:nth-child(even){
	background: #ECEAE8;
	-webkit-transform: rotate(-3deg);
	-moz-transform: rotate(-3deg);
	-o-transform: rotate(-3deg);
	-ms-transform: rotate(-3deg);
	transform: rotate(-3deg);
}

.se-content{
	width: 1100px;
	margin: 0 auto;
}

.se-slope:nth-child(odd) .se-content{
	-webkit-transform: rotate(-3deg);
	-moz-transform: rotate(-3deg);
	-o-transform: rotate(-3deg);
	-ms-transform: rotate(-3deg);
	transform: rotate(-3deg);
	padding: 50px 10px 200px;
}

.se-slope:nth-child(even) .se-content{
	-webkit-transform: rotate(3deg);
	-moz-transform: rotate(3deg);
	-o-transform: rotate(3deg);
	-ms-transform: rotate(3deg);
	transform: rotate(3deg);
	padding: 50px 10px 200px;
}


.se-slope.color-end{
	background: #ECEAE8;
}


/* Media Queries */


@media screen and (max-width: 1010px){
.se-content h3{
		font-size: 40px;
	}
}

@media screen and (max-width: 767px) {
	
.se-content{
	width: 97%;
	margin: 0 auto;
}
	
.se-content h3{
		font-size: 20px;
	}
}

@media screen and (max-width: 400px) {
	
	.se-content{
	width: 97%;
	margin: 0 auto;
}
	
	.se-content h3{
		font-size: 20px;
		line-height: 20px;
		padding-top: 30px;
		height: 60px;
	}
	
	.se-content p{
		width: 95%;
	}
	
	
	

.se-slope:nth-child(odd) .se-content{
	padding-left:60px;
	padding-right:60px;
	padding-bottom: 70px
}
	
.se-slope:nth-child(even) .se-content{
		padding-left:60px;
		padding-right:60px;
		
	}
}











/*　　　　テーブル（1列）
------------------------------------------------------------------------------------------*/

.responsive {
	width: 95%;
}

@media screen and (max-width: 768px) {
.responsive {
	width: 99%;
	font-size: 18px;
	line-height: 1.4em; 
}
}







/*　　　　テーブル（2列／50％均等）
------------------------------------------------------------------------------------------*/

 
.tbl_50	{}
.tbl_50 th	{ width: 50%; text-align: center; padding: 5px;}
.tbl_50 td	{ width: 50%; text-align: justify; padding: 5px;}

.tbl_50 img	{ max-width: 100%;}

@media only screen and (max-width:640px){
	.tbl_50	{margin: 0 -10px 0 0; font-size: 18px; line-height: 1.2em;}
    .tbl_50 th,
	.tbl_50 td{
		width: 97%;
        display: block;
		border-top: none;
    }  
}









/*　　　キャッチ
------------------------------------------------------------------------------------------*/


.menu_com {
	text-align: center;
	font-size: 30px;
	line-height: 1.7em;
	margin: 70px 0px 30px;
}


.menu_com2 {
	text-align: center;
	font-size: 20px;
	line-height: 1.7em;
	margin: 30px 0px 70px;
}



@media only screen and (max-width:768px){
.menu_com {
	font-size: 18px;
	margin: 20px 0px;
}	

.menu_com2 {
	text-align: left;
	font-size: 16px;
	margin: 20px 0px 40px;
}
}







/*　　　　各メニュー　メイン写真
------------------------------------------------------------------------------------------*/

.mainphoto {
	margin: 50px auto;
	width: 800px;
}





@media only screen and (max-width:768px){
.mainphoto {
	margin: 20px auto;
	width: 100%;
}	
.mainphoto img{
	width: 100%;
}	
}













/*　　セカンドタイトル
------------------------------------------------------------------------------------------*/


.second_ttl {
	font-size: 30px;
	margin: 100px auto 60px;
	text-align: center;
}


@media only screen and (max-width:768px){
.second_ttl {
	font-size: 22px;
	margin: 50px auto;
	text-align: center;
}
}










/*　　右寄せリンク・中央寄せリンク
------------------------------------------------------------------------------------------*/


.tx_right {
	text-align: right !important;
	margin: 20px auto; 
}


.tx_center {
	text-align: center !important;
	margin: 20px auto; 
}

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

.tx_right {
	font-size: 14px;
	letter-spacing: .1em;
}
	

.tx_center {
	font-size: 14px;
	text-align: left !important;
	letter-spacing: .1em;
}

}










/*　　　料金
------------------------------------------------------------------------------------------*/



.price {
	font-size: 34px;
	margin: 40px auto 60px;
	text-align: center;
}

.price span{
	font-size: .6em;
}





.price-box {
	width: 900px;
	margin: 50px auto;
	padding: 20px;
	border-radius: 10px;
	border: solid 2px rgba(41,32,27,1.00);
	text-align: center;
}  


.price-box_big-tx{
	font-size: 36px;
	letter-spacing: 0.3em;
	vertical-align: middle;
	margin-left: 20px;
}  



.price-box_etc {
	width: 100%;
	margin: 50px auto;
	padding: 5px;
}  


.price-box_etc-2col {
	width: 600px;
	margin: 50px auto;
	padding: 5px;
}



.price-box_etc-3col {
	width: 900px;
	margin: 50px auto;
	padding: 5px;
} 



.price-box_etc-inner {
	width: 100%;
	height: 100%;
	padding: 5px;
	border-radius: 5px;
	border: solid 2px rgba(41,32,27,1.00);
	text-align: center;
	
  display: flex;
  justify-content: center;
  align-items: center;
} 


.price-box img{
	max-width: 100%;
	vertical-align: middle;
}

.price-plus {
	font-size: 40px;
	text-align: center;
	margin: 50px auto;
}




@media screen and (max-width: 768px) {	
	
.price-box {
	width: 98%;
	margin: 50px auto;
}  
	

.price-box_big-tx{
	font-size: 30px;
	letter-spacing: 0.3em;
	vertical-align: middle;
	margin-left: 20px;
}  

	
.price-box_etc {
	width: 100%;
	margin: 50px auto;
	font-size: 16px;
}  
	

.price-box_etc-2col {
	width: 100%;
	margin: 50px auto;
	font-size: 16px;
}  
	

.price-box_etc-3col {
	width: 100%;
	margin: 50px auto;
	font-size: 16px;
}  
}








/*　　料金システム
------------------------------------------------------------------------------------------------------------*/


	
.system-item {
	width: 250px;
	padding: 5px 20px;
	border: rgba(55,43,27,0.8) solid 2px;
	text-align: center;
}


.system-item-2 {
	width: 95%;
	text-align: center;
	font-size: 20px;
	color: rgba(55,43,27,0.8);
	margin: 10px auto 20px;
	padding: 10px 20px;
	border-bottom: rgba(55,43,27,0.5) solid 3px;
	background-color:  rgba(55,43,27,0.2);
}


.system td {
  padding: 10px;
	text-align: center;
}



@media all and (max-width: 767px) {

.system,
.system td,
.system th {
  border-collapse: collapse;
  text-align: center;
}

.system th {
  width: 100%
}

.system td {
  padding: 3px;
  display: block;
  width: 100%;
}

}
	





.kakomi-box {
 margin: 2em auto;
 padding: 1em;
 width: 90%;
 background-color: rgba(255,255,255,0.30); /* 背景色 */
 border: 1px solid #ccc; /* 枠線 */
}



@media all and (max-width: 767px) {
	
.kakomi-box {
 width: 98%;
}
	
}

















/*　　　フォトギャラリー用
------------------------------------------------------------------------------------------*/


.gallery{
    width: 95%;
	margin: 50px auto;
}
	
.gallery img {
    width: 100%;
}
	
.p-size {
    width: 24%;
    margin: 0 0.5% 10px 0.5%;
}
	
@media screen and (max-width: 768px) {	
.p-size {
    width: 32%;
    margin: 0 0.5% 10px 0.5%;
}
	}
	
@media screen and (max-width: 480px) {	
	
.gallery {
    width: 99%;
	margin: 0 auto;
}
	
.p-size {
    width: 46%;
    margin: 0 2% 10px 2%;
}
	}











/*　　　ボックス
------------------------------------------------------------------------------------------*/



.tx_box{
	font-size: 17px;
	line-height: 1.5em;
	letter-spacing: 0.05em;
    padding: 0.5em 1em;
    margin: 1em 0;
    background: white;
	border-radius: 8px;
    box-shadow: 2px 3px 7px rgba(0, 0, 0, 0.4);
}


.tx_box2{
	font-size: 16px;
	line-height: 1.5em;
	letter-spacing: 0.05em;
    padding: 0.5em 1em;
    margin: 1em 0;
    background: white;
	border: solid 1px #CCCCCC;
}



.tx_box-center {
	font-size: 17px;
	line-height: 1.5em;
	letter-spacing: 0.05em;
    padding: 1em;
    margin: 20px auto 100px;
    background: white;
	border-radius: 8px;
    box-shadow: 2px 3px 7px rgba(0, 0, 0, 0.4);
	text-align: center;
}


.tx_box-no_frame-w1000 {
	width: 1000px;
	margin: 50px auto;
	font-size: 17px;
	line-height: 1.5em;
	letter-spacing: 0.05em;
    padding: 0.5em 1em;
	text-align: center;
}


.tx_box-no_frame {
	width: 100%;
	font-size: 17px;
	line-height: 1.5em;
	letter-spacing: 0.05em;
    padding: 5px;
    margin: 20px auto;
	text-align: center;
}



.tx_box-no_frame-auto {
	display: table;
	text-align: left;
	margin: 50px auto;
}
 
.tx_box-no_frame-auto p {
    font-weight: bold;
}
 
.tx_box-no_frame-auto ul {
    margin-bottom: 0;
	padding-left: 1em;
	text-align: justify;
}
 
.tx_box-no_frame-auto li {
    margin-bottom: 5px;
	line-height: 1.3em;
}




.tx-back {
	background: linear-gradient(transparent 50%, #DFFFDF 50%);
}

.tx_box p {
    margin: 0; 
    padding: 0;
}

.tx_box ul {
	padding-left: 1.5em;
}


.tx_box ul li{
	margin-bottom: 10px;
}

.tx_box ul li:last-child{
	margin-bottom: 0px;
}

.tx_box-photo {
    padding: 0.5em 1em;
    margin: 1em 0;
    background: white;
}




.box-ttl {
  position: relative;
	font-weight: bold;
  border-bottom: solid 2px #FF9646;
  line-height: 1.4;
  padding: 0.1em 0.5em 0.2em 1.8em;
  margin: 0 0 0.5em 0;
	font-size: 110%;
}

.box-ttl:before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  content: "\f303";
  font-weight: 900;
  font-size: 18px;
	color:  #FF9646;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);

}




.box-ttl_line {
  position: relative;
	font-weight: bold;
  border-bottom: solid 2px #FF9646;
  line-height: 1.4;
  padding: 0.1em 0.5em 0.2em;
  margin: 0 0 0.5em 0;
	font-size: 110%;
}




@media screen and (max-width: 768px) {
	
	.tx_box {
		font-size: 15px;
		margin: 0.5em 0;
		line-height: 1.2em;
		letter-spacing: 0.02em;
	}
	.tx_box2 {
		font-size: 14px;
		margin: 0.5em 0;
		line-height: 1.2em;
		letter-spacing: 0.02em;
	}
	
.tx_box-center{
	width: 100%;
	font-size: 14px;
    margin: 20px auto 50px;
    padding: .7em;
}

	.tx_box p {font-size: 14px;}
	.box-ttl {font-size: 16px;}
	.tx_box ul {font-size: 14px;}
	
.tx_box-no_frame-w1000 {
	width: 100%;
	font-size: 16px;
    padding: 0.5em 0;
	text-align: justify;
}

.tx_box-no_frame{
	width: 100%;
	margin: 30px auto;
	font-size: 16px;
	text-align: justify;
}
	
	
 
.tx_box-no_frame-auto li {
	font-size: 14px;
}

}








/*　　　　オシャレボタン
------------------------------------------------------------------------------------------*/


.btn {
  display: inline-block;
  margin: 0.75rem;
  padding: 0.35rem 1.5rem 0.5rem 1.5rem;
  border: none;
  border-radius: 0.1875rem;
  outline: none;
  background-color: tomato;
  color: white !important;
  font-family: inherit;
  font-weight: 400;
  line-height: 1.5rem;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  -webkit-transition: all 150ms ease-out;
  transition: all 150ms ease-out;
}

.btn:focus, .btn:hover {
  background-color: #ff7359;
  box-shadow: 0 0 0 0.1875rem white, 0 0 0 0.375rem #ff7359;
}

.btn:active {
  background-color: #f25e43;
  box-shadow: 0 0 0 0.1875rem #f25e43, 0 0 0 0.375rem #f25e43;
  -webkit-transition-duration: 75ms;
          transition-duration: 75ms;
}

.btn.is-outlined {
  border: 0.1875rem solid tomato;
  background-color: transparent;
  color: tomato;
}

.btn.is-outlined:focus, .btn.is-outlined:hover {
  border-color: #ff7359;
  color: #ff7359;
}

.btn.is-outlined:active {
  border-color: #f25e43;
  color: #f25e43;
}














/*　　　　問い合わせ下さいの文字
------------------------------------------------------------------------------------------*/

/*
.toiawase {
	text-align: center;
	font-size: 26px;
	font-weight: bold;
	color: #F00;
	margin: 10px auto 50px;
}


.toiawase br{
	display: none;
}
*/


.toiawase {
  position: relative;
  display: inline-block;
  padding: 0 45px;
  text-align: center;
  font-size: 26px;
  line-height: 1.2em;
  font-weight: bold;
  color: #FF9C0F;
	margin: 100px 0px 25px 0px;
}


.toiawase p{
	margin: 0;
}


.toiawase p br{
	display: none;
	}

.toiawase:before {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 60px;
  height: 2px;
  background-color: #FF9C0F;
  -webkit-transform: rotate(-120deg);
  transform: rotate(-120deg);
}

.toiawase:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 60px;
  height: 2px;
  background-color: #FF9C0F;
  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg);
}

.toiawase:before {
  left:0;
}

.toiawase:after {
  right: 0;
}



@media screen and (max-width: 960px) {
	
.toiawase {
	font-size: 20px;
	padding: 0 70px;
}


.toiawase p br{
	display: block;
	}

.toiawase:before {
  width: 100px;
}

.toiawase:after {
  width: 100px;
}

.toiawase:before {
  left:0;
  margin-right: 0px;
}

.toiawase:after {
  right: 0;
}

}












/*　商品紹介
------------------------------------------------------------------------------------------*/



.goods {
	border-bottom: 2px solid #000000;
	border-top: 2px solid #000000;
	padding: 100px auto;
	width: 900px;
	margin: 150px auto 0px;
}


.goods_line {
	margin: 100px auto;
	background-color: rgba(153,141,118,1.00);
	border: none;
	height: 2px;
	width: 95%;
}


.goods_name {
	font-size: 26px;
	text-align: left;
	font-weight: bold;
	margin-left: 10px;
}

.goods_name span{
	font-size: 16px;
	text-align: left;
	margin-left: 1em;
}



.goods_price {
	font-size: 22px;
	font-weight: bold;
	color: rgba(177,0,2,1.00);
	margin: 10px;
	text-align: justify;
}



.goods_price span{
	font-size: 14px;
	color: rgba(0,0,0,1.00);
}


tax{
	font-size: 50% !important;
}


.tax_b{
	font-size: 65% !important;
}


.goods_tx {
	margin: 10px;
	text-align: justify;
}


.goods_tx_s {
	font-size: 14px;
	margin: 10px;
	text-align: justify;
	line-height: 1.2em;
}

.goods_about_tx {
	font-size: 14px;
	color: rgba(235,81,143,1.00);
	text-align: justify;
	line-height: 1.3em;
}


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

.goods_name {
	font-size: 22px;
	margin-left: 5px;
}

.goods_name span{
	font-size: 14px;
}
	
.goods_price {
	font-size: 20px;
	margin: 10px 5px;
	text-align: justify;
}
	
.goods_price span{
	font-size: 14px;
	}
	
	
.goods_tx {
	font-size: 16px;
	margin: 10px 5px;
	text-align: justify;
	line-height: 1.3em;
}	
	
.goods_tx_s {
	font-size: 13px;
	}

.goods_line {
	margin: 50px auto;
	width: 99%;
}
	
	}





/*------------　テーブル2列　------------*/


.goods2col {
	width: 920px;
	margin: 10px auto;
}

.goods2col th {
	width: 50%;
	padding: 10px;
	font-weight: normal;
}

.goods2col th img{
	width: 450px;
}

.goods2col td img{
	width: 400px;
}

.goods2col td {
	padding: 10px;
}


 

@media screen and (max-width: 640px) {
	
.goods2col {
    width: 98%;
  }
.goods2col th,
.goods2col td {
    display: block;
    width: 100%;
	  text-align: center;
  }

	
.goods2col th img,
.goods2col td img{
	max-width: 100%;
}
}
 




/*------------　テーブル台紙価格　------------*/

.daishi{
	font-size: 14px;
	border-collapse: collapse;
	width: 100%;
	line-height: 1.3em;
}

.daishi td, th {
padding: 2px;
}


.daishi th{
	width: 27%;
	border: solid 1px #555555;
}

 .daishi th:first-child {
	width: 19%;
 }

.daishi td{
	text-align: center;
	border: solid 1px #555555;
	color: rgba(177,0,2,1.00);
}

.daishi td:first-child {
	color: rgba(0,0,0,1.00);
}


@media screen and (max-width: 640px) {
  .daishi {
    width: 100%;
  }
	
  .daishi .thead {
    display: none;
  }
	
  .daishi tr {
    width: 100%;
  }

 .daishi th {
	border: solid 1px #DDD;
  }
	
  .daishi td {
    display: block;
    text-align: right;
    width: 100%;
	border: solid 1px #DDD;
  }
	
  .daishi td:first-child {
    text-align: center;
	  background-color: rgba(243,237,216,1.00);
  }
	
  .daishi td:before {
    content: attr(data-label);
    float: left;
	color: rgba(0,0,0,1.00);
  }
}


 





/*　スタジオ紹介
------------------------------------------------------------------------------------------*/




/*------------　テーブル2列　------------*/


.studio_2col {
	width: 1000px;
	margin: 10px auto;
}

.studio_2col th {
	max-width: 30%;
	padding: 10px;
	font-weight: normal;
}

.studio_2col th,td img{
	max-width: 100%;
}


.studio_2col td {
	padding: 10px;
}

	
.studio_tx {
	font-size: 16px;
	margin: 10px 5px;
	text-align: justify;
	line-height: 1.3em;
	border-bottom: dotted 1px rgba(74,66,50,1.00);
}

	
.studio_info {
	font-size: 16px;
	margin: 10px 5px;
	text-align: justify;
	line-height: 1.3em;
}

 

@media screen and (max-width: 640px) {
	
.studio_2col {
    width: 98%;
  }
.studio_2col th,
.studio_2col td {
    display: block;
    width: 100%;
	  text-align: center;
  }

	
.studio_2col th img,
.studio_2col td img{
	max-width: 100%;
}

	
.studio_info {
	font-size: 14px;
}	
}
 



/*------------　フォトギャラリー用の幅　------------*/

.photowide{
	width: 1000px;
	margin: 20px auto 50px;
}


.photowide img{
	max-width: 100%;
}

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

.photowide{
	width: 97%;
	margin: 20px auto 50px;
}
	
}





/*------------　神社テキスト　------------*/


.jinja-adress {
	width: 1000px;
	margin: 10px auto;
	text-align: left;
	font-size: 16px;
}

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

.jinja-adress {
	width: 97%;
	font-size: 14px;
}
	
}










/*　ブライダル
------------------------------------------------------------------------------------------*/



.bridal-album-wide {
	width: 100%;
	margin: 10px auto 50px;
	text-align: center;
}

.bridal-album {
	width: 100%;
	margin: 0 auto;
}

.bridal-album img{
	max-width: 100%;
	margin-bottom: 10px;
}


.bridal-album-price {
	font-size: 16px;
	font-weight: bold;
	color: rgba(177,0,2,1.00);
	margin: 5px auto 15px;
	line-height: 1.3em;
}

.bridal-album-price span{
	font-size: 14px;
	font-weight: normal;
	color: #222222;
}

.bridal-album-price-s {
	font-size: 13px;
}


.bridal-studio{
	width: 100%;
	text-align: center;
	margin-bottom: 30px;
}


.bridal-studio img{
	max-width: 100%;
	height: auto;
	margin: 15px auto 10px;
}


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

.bridal-album-wide {
	width: 97%;
}
	
}



.tbl_oitachi {width: 100%;}
.tbl_oitachi th	{ width: 25%; text-align: justify; padding: 5px; font-weight: normal;}
.tbl_oitachi td	{ width: 75%; text-align: justify; padding: 5px;}
.tbl_oitachi img {  }

@media only screen and (max-width:640px){
	.tbl_oitachi	{margin: 0 -10px 0 0; font-size: 18px; line-height: 1.2em;}
    .tbl_oitachi th,
	.tbl_oitachi td{
		width: 97%;
        display: block;
		border-top: none;
		font-size: 16px;
    }  
	
.tbl_oitachi th { text-align: center;}
	
}







/*　　フォトウエディング
------------------------------------------------------------------------------------------------------------*/


.wedding_tbl {
	table-layout: auto;
	width: 85%;
}

.wedding_tbl th img{
	margin-right: 40px;
}



.wedding_price_box {
	width: 98%;
	margin: 10px auto 15px;
	text-align: left;
}

.wedding_price_ttl {
	width: 100%;
	font-size: 22px;
	font-weight: bold;
	margin: 0px auto 10px;
}

.wedding_price {
	width: 98%;
	margin: 0 auto;
	font-size: 18px;
}

.wedding_price ul{
	list-style: none;
	padding-left: 0;
}
.wedding_price ul li{
	padding-left: 0;
	line-height: 1.2em;
	margin-bottom: 10px;
}


@media screen and (max-width: 640px) {
	
.wedding_tbl {
	width: 100%;
}

.wedding_tbl th {
    display: block;
    width: 100%;
	text-align: center;
  }
	
.wedding_tbl th img{
	margin: 15px auto;
}
	
.wedding_tbl td {
    display: block;
    width: 100%;
	text-align: left;
  }
	
.wedding_price_ttl {
	font-size: 20px;
}
	
.wedding_price {
	font-size: 16px;
}

}













/*　よくある質問
------------------------------------------------------------------------------------------*/



.qa_box {
	width: 1000px;
	margin: 50px auto 100px;
}


.qa
{
	margin: 1.5em 0 0 ;
	font-size: 110%;
	text-align: justify;
}

.qa dt ,
.qa dd
{
	padding: 4px 0 ;
}

.qa dt:hover
{
	cursor: pointer ;
	color: #777 ;
	
	background-color: rgba(251,223,190,1.00);
	
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}


.qa dt {
	font-weight: 700 ;
	padding: 8px 8px 10px 8px;
	padding-left: 2.5em;/*アイコン分のスペース*/
	margin-top: 30px;
	position: relative;
	line-height: 1.4;/*行高*/
	
	border: 1px solid rgba(255,235,192,1.00);
	border-radius: 10px;
	
	background-color: rgba(255,245,233,1.00);
	
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}




.qa dt:before {
  font-family: "Font Awesome 5 Free";
  content: "\f059";/*アイコンのユニコード*/
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1.8em;/*サイズ*/
  left: 5px; /*アイコンの位置*/
  top: -2px; /*アイコンの位置*/
  color: #1D79BD; /*アイコン色*/
}


.qa dd
{
	margin-left: 15px;
	display: none ;
	padding: 12px 0px 20px 1.5em ;
	position: relative;
	padding-left: 1.7em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	font-size: 16px;
}


.qa dd:before {
  font-family: "Font Awesome 5 Free";
  content: "\f0eb";/*アイコンのユニコード*/
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1.5em;/*サイズ*/
  left: 0;;/*アイコンの位置*/
  top: .3em;/*アイコンの位置*/
  color: #FFC446; /*アイコン色*/
}


@media screen and (max-width: 640px) {
	
.qa_box {
	width: 98%;
}
	

.qa{	
	font-size: 95%;
	}

	
.qa dd { margin-left: 10px; }
	
.qa dd {
	display: none ;
	padding: 12px 0px 20px 1.5em ;
	position: relative;
	padding-left: 0;
	line-height: 1.4;
}


.qa dd:before {
	display: none;
}

	
	
}









/*　メディア情報
------------------------------------------------------------------------------------------*/




.media_width {
	width: 95%;
	margin: 20px auto;
}


.media {
	width: 95%;
	margin: 20px auto 80px;
}

.media img{
	max-width: 100%;
}





/*---　　タイトルアイコンテレビ　　　---*/


.media-ttl_tv {
	width: 92%;
	margin: 10px auto;
	position: relative;/*相対位置*/
	padding: 5px;
	padding-left: 1.8em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	font-size: 20px;
}

.media-ttl_tv:before {
  font-family: "Font Awesome 5 Free";
  content: "\f26c";/*アイコンのユニコード*/
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1.2em;/*サイズ*/
  left: 0;/*アイコンの位置*/
  top: 0.05em;/*アイコンの位置*/
  color: #ADA396; /*アイコン色*/
}



/*---　　タイトルアイコン新聞　　　---*/


.media-ttl_newspaper {
	width: 92%;
	margin: 10px auto;
	position: relative;/*相対位置*/
	padding: 5px;
	padding-left: 1.8em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	font-size: 20px;
}



.media-ttl_newspaper:before {
  font-family: "Font Awesome 5 Free";
  content: "\f1ea";/*アイコンのユニコード*/
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1.2em;/*サイズ*/
  left: 0;/*アイコンの位置*/
  top: 0.05em;/*アイコンの位置*/
  color: #ADA396; /*アイコン色*/
}




/*---　　タイトルアイコン先生　　　---*/


.media-ttl_teach {
	width: 92%;
	margin: 10px auto;
	position: relative;/*相対位置*/
	padding: 5px;
	padding-left: 1.8em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	font-size: 20px;
}



.media-ttl_teach:before {
  font-family: "Font Awesome 5 Free";
  content: "\f51c";/*アイコンのユニコード*/
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1.2em;/*サイズ*/
  left: 0;/*アイコンの位置*/
  top: 0.05em;/*アイコンの位置*/
  color: #ADA396; /*アイコン色*/
}






@media screen and (max-width: 640px) {
	
.media-ttl_tv {
	width: 100%;
	font-size: 14px;
}	
	
.media-ttl_newspaper {
	width: 100%;
	font-size: 14px;
}
	
.media-ttl_teach {
	width: 100%;
	font-size: 14px;
}
	
}




.media-ttl_tbl-in {
	margin: 20px 0px;
	text-align: left;
}




/*---　　メディア情報2列テーブル　　　---*/



.media_tbl_2col {
	width: 95%;
	margin: 10px auto;
}

.media_tbl_2col th,
.media_tbl_2col td {
	max-width: 50%;
	padding: 10px;
	font-weight: normal;
}


.media_tbl_2col th img,
.media_tbl_2col td img{
	max-width: 100%;
}



@media screen and (max-width: 640px) {
	
.media_tbl_2col {
    width: 98%;
  }
	
.media_tbl_2col th,
.media_tbl_2col td {
    display: block;
    max-width: 100%;
	text-align: center;
  }

	
.media_tbl_2col th img,
.media_tbl_2col td img{
	max-width: 100%;
}


}





.youtube-box {
	width: 60%;
	margin: 0 auto;
} 

@media screen and (max-width: 640px) {
.youtube-box {
	width: 100%;
} 	
}








/*　　マタニティ 流れ
------------------------------------------------------------------------------------------------------------*/


.maternity-flow{
	max-width: 100%;
	font-size: 16px;
	margin-left: 0px;
	padding-left: 1.8em;
}



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

.maternity-flow{
	font-size: 14px;
}


}








/*　神社撮影
------------------------------------------------------------------------------------------------------------*/



.jinja-photo-box {
	width: 100%;
	margin: 20px auto;
}

.jinja-photo-box img{
	max-width: 100%;
	
	padding:7px;
	border:1px solid #E3E3E3;
	background:#fff;
	box-shadow: 1px 1px 5px rgba(20,20,20,0.2); /* ドロップシャドウ 【横位置 縦位置 ぼかし幅 色】の順に記述 */
}


.kakomi753 {
	padding: 5px;
	margin: 10px auto;
	background: rgba(255,253,211,1.00);
	border: rgba(255,140,72,1.00) solid 1px;
}

.jinja-small-tx {
	font-size: 13px;
	line-height: 1.3em !important;
}

.jinja-red-big {
	font-size: 26px;
	color: rgba(208,0,0,1.00);
}

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

.jinja-photo-box {
	width: 100%;
}


.jinja-photo-box img{
	max-width: 100%;
	
	padding:4px;
	border:1px solid #E3E3E3;
	background:#fff;
	box-shadow: 1px 1px 3px rgba(20,20,20,0.2); /* ドロップシャドウ 【横位置 縦位置 ぼかし幅 色】の順に記述 */
}

.jinja-red-big {
	font-size: 18px;
}
	

}









/*　 ポートレート
------------------------------------------------------------------------------------------*/


.portrate_price {
	width: 900px;
	margin: 40px auto 0px;
	padding-bottom: 40px;
	border-bottom: dotted 1px rgba(102,102,102,1.00);
}



.portrate_price-tx {
	text-align: center;
	font-size: 16px;
}

.portrate_price-ttl {
	font-size: 1.2em;
	font-weight: bold;
	margin: 5px auto 10px;
	text-align: center;
}


.portrate_price-ttl span{
	font-size: .7em;
	font-weight: normal;
}

.portrate_price ul{ 
    list-style: disc;
    padding-left: 15px;
}


.portrate_price ul li{ 
	
}


.ul-align-center{
    display: flex;
    align-items: center;
    flex-direction: column;
  }




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

.portrate_price {
	width: 100%;
	font-size: 15px;
}
	

.portrate_price-tx {
	font-size: 13px;
}
}




/*　　証明写真
------------------------------------------------------------------------------------------------------------*/


.shomei_tbl {
	table-layout: auto;
	width: 85%;
}

.shomei_tbl th img{
	margin-right: 40px;
}



.shomei_price_box {
	width: 95%;
	margin: 10px auto 30px;
	text-align: left;
}

.shomei_price_ttl {
	width: 100%;
	font-size: 22px;
	font-weight: bold;
	margin: 0px auto 10px;
}

.shomei_price {
	width: 98%;
	margin: 0 auto;
	font-size: 18px;
}

.shomei_price ul{
	list-style: none;
	padding-left: 0;
}
.shomei_price ul li{
	padding-left: 0;
}


@media screen and (max-width: 640px) {
	
.shomei_tbl {
	width: 100%;
}

.shomei_tbl th {
    display: block;
    width: 100%;
	text-align: center;
  }
	
.shomei_tbl th img{
	margin: 15px auto;
}
	
.shomei_tbl td {
    display: block;
    width: 100%;
	text-align: left;
  }
	
.shomei_price_ttl {
	font-size: 20px;
}
	
.shomei_price {
	font-size: 16px;
}

}








/*　　その他金額 左寄せ用
------------------------------------------------------------------------------------------------------------*/




.etc_price_box {
	width: 95%;
	margin: 10px auto 30px;
	text-align: left;
}

.etc_price_ttl {
	width: 100%;
	font-size: 22px;
	font-weight: bold;
	margin: 0px auto 10px;
}

.etc_price {
	width: 98%;
	margin: 0 auto;
	font-size: 18px;
}

.etc_price ul{
	list-style: none;
	padding-left: 0;
}
.etc_price ul li{
	padding-left: 0;
}


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

.etc_price_box {
	width: 99%;
	margin: 10px auto 30px;
	text-align: left;
}
	
.etc_price_ttl {
	font-size: 18px;
}
	
.etc_price {
	font-size: 15px;
}

}









/*　　店舗概要
------------------------------------------------------------------------------------------------------------*/

.concept {
	font-size: 20px;
	font-weight: 400;
	width: 100%;
	text-align: center;
	margin: 100px auto;
	line-height: 1.7em;
}

.concept-bigtx {
	font-size: 40px;
	margin-bottom: 10px;
}

.concept-smalltx {
	font-size: 18px;
	}

.concept img{
	max-width: 100%;
}



@media screen and (max-width: 640px) {
	
.concept {
	font-size: 18px;
	letter-spacing: 0.01em;
}
	
		
.concept-eng{
	font-size: 18px;
	line-height: 1.2em;
	margin: 10px 0px 0px 0px;
}

.concept-bigtx {
	font-size: 36px;
	text-align: center;
}

.concept-smalltx {
	font-size: 16px;
	text-align: left;
	}
	
}






/*---　　沿　革　　---*/

#history {
  width: 90%;
  margin: 0px auto 100px;
}


#history th,
#history td {
  padding: 24px 0;
  border-bottom: 1px dotted #b5b1b1;
}


#history th {
  width: 25%;
	vertical-align: top;
}

#history td {
	text-align: justify;
}



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

#history {
  width: 95%;
  margin: 0px auto 100px;
}
	
  #history th,
  #history td {
    width: 100%;
    display: block;
	  font-size: 16px;
  }

  #history th {
	  text-align: left;
    width: 100%;
	  border: none;
  }

  #history td {
    padding-top: 0;
  }
}




/*---　　スタッフ　　---*/


.staff {
	width: 95%;
	margin: 20px auto 80px;
}



.staff img{
	max-width: 100%;
}





/*------------　テーブル2列　------------*/


.staff_2col {
	width: 80%;
	margin: 10px auto;
}

.staff_2col th {
	width: 35%;
	padding: 20px;
	font-weight: normal;
}

.staff_2col td {
	width: 65%;
	padding: 20px;
	font-weight: normal;
}

.staff_2col th,td img{
	max-width: 100%;
}


.staff_2col td {
	padding: 10px;
}


	
.staff_tx {
	font-size: 16px;
	margin: 10px 5px;
	text-align: justify;
	line-height: 1.7em;
}

.staff_name {
	font-size: 30px;
	line-height: 1.2em;
	letter-spacing: 0.1em;
	border-bottom: dotted 1px rgba(74,66,50,1.00);
}

.staff_name span{
	font-size: 50%;
	letter-spacing: 0.05em;
}


@media screen and (max-width: 640px) {
	
.staff_2col {
    width: 98%;
	padding-bottom: 20px;
	margin-bottom: 40px;
	border-bottom: solid 1px rgba(74,66,50,1.00);
  }
.staff_2col th,
.staff_2col td {
    display: block;
    width: 100%;
	  text-align: center;
  }

	
.staff_2col th img,
.staff_2col td img{
	max-width: 100%;
}

	
	
.staff_tx {
	font-size: 14px;
	margin: 10px 5px;
	text-align: justify;
	line-height: 1.7em;
}

.staff_name {
	font-size: 26px;
	line-height: 1.2em;
	letter-spacing: 0.1em;
	border-bottom: dotted 1px rgba(74,66,50,1.00);
}


	
}
 







/*　　その他商材用アコーディオン
------------------------------------------------------------------------------------------------------------*/




#etc-photomenu {
  width: 1000px;
	margin: 0 auto;
}

#etc-photomenu > dt {
  border-bottom: solid 1px white;
  background-color: #ffffff;
  cursor: pointer;
	margin-top: 30px;
}

#etc-photomenu > dd {
	width: 950px;
  margin: 0px auto;
}

#etc-photomenu > dd img{
	max-width: 100%;
	height: auto;
}
	
#etc-photomenu > dt img:hover {
	 filter: alpha(opacity=60);
	 -moz-opacity:0.6;
	 opacity:0.6;
	 -webkit-transition: all .3s;
	 transition: all .3s;
	 }


@media screen and (max-width: 768px) {
	
#etc-photomenu {
  width: 100%;
}
	

#etc-photomenu > dd {
	width: 100%;
}
	
	
#etc-photomenu > dt img{
	max-width: 100%;
}

}
	






