@charset "UTF-8";

/* -----------------------------------------------
 *  	         component.css
 * ----------------------------------------------- */

/* =========== generalArti 汎用の括り =========== */
article.general_arti{
	margin:0 auto;
	}
/* 1200px */
@media only screen and (max-width: 75em) {
	article.general_arti{
		padding:0 1%;
	}
}

/*type2*/
article.general_arti_type2{
	margin:0 auto;
	padding:5% 0;
	}
/* 1200px */
@media only screen and (max-width: 75em) {
	article.general_arti_type2{
		padding:10% 0;
	}
}

/*type3*/
article.general_arti_type3{
	margin:0 auto;
	padding:0;
	}
/* 480px */
@media only screen and (max-width: 30em) {
	article.general_arti_type3{
		padding:5% 0;
	}
}



/* =========== header(ページ冒頭) =========== */
/*01*/
header.page_header_01{
    margin: 50px 0;
    padding: 30px 0;
    background-color: #303030;
    text-align: center;
    
}
header.page_header_01 img{
    width: 50px;
}
header.page_header_01 h1{
    display: inline-block;
    font-size: 24px;
    vertical-align:middle;
}

/*02 -サービス詳細ヘッダー-*/
header.page_header_02{
    margin: 30px 0;
    padding: 30px 0;
    text-align: center;
}
header.page_header_02 div{
    margin: 0 0 20px 0;
    padding: 5px 0;
    background-color: #ffdc10;
}
header.page_header_02 div img{
    width: 40px;
}
header.page_header_02 div span{
     font-size: 18px;
     vertical-align: middle;
}
header.page_header_02 h1{
    font-size: 34px;
    vertical-align:middle;
    color: #473D24;
}
header.page_header_02 p{
    font-size: 14px;
    color: #473D24;
}

/* ===================== swiperSetting ===================== */

.swiper-img-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  padding-bottom: 40px;
  /* Fix of Webkit flickering */
  z-index: 1;
  text-align: center;
}
/* 480px */
@media only screen and (max-width: 30em) {
}


/* =====================flexBox===================== */

/*flex_center 1段 中央 */
.flex_center{
	display: flex;
	align-items: center;
	justify-content: center;
}
.flex_center > div.flex_center_inner{
	width: 100%;
}


/*flex_1A 1段 50→100 */
.flex_1A{
	display: flex;
	justify-content: center;
}
.flex_1A div:first-child{
	width: 49%;
}
@media only screen and (max-width: 30em) {
.flex_1A{
	display: block;
}
.flex_1A div:first-child{
	width: 100%;
	margin: 0 0 30px 0;
}
}

/*flex_2A 2段 48:48 */
.flex_2A{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.flex_2A div, .flex_2A section{
    width: 48%;
}

@media only screen and (max-width: 48em) {
.flex_2A{
}
.flex_2A div, .flex_2A section{
	width: 100%;
	margin: 0 0 0 0;
}
}

/*flex_2B 2段 67:30*/
.flex_2B{
	display: flex;
	justify-content: space-between;
}
.flex_2B .flex_2B_innerA{
	width: 67%;
}
.flex_2B .flex_2B_innerB{
	width: 30%;
}
@media only screen and (max-width: 48em) {
    .flex_2B{
        display: block;
    }
    .flex_2B .flex_2B_innerA{
        width: 100%;
        margin: 0 0 10px 0;
    }
    .flex_2B .flex_2B_innerB{
        width: 100%;
    }
}


/*flex_2C 2段 55:45 */
.flex_2C{
	display: flex;
}
.flex_2C div:first-child{
	width: 45%;
}
.flex_2C div:nth-child(2){
	width: 55%;
}
@media only screen and (max-width: 30em) {
.flex_2C{
	display: block;
}
.flex_2C div:first-child{
	width: 100%;
}
.flex_2C div:nth-child(2){
	width: 100%;
}
}

/*flex_2D 2段 50:50 中央寄せ */
.flex_2D{
	display: flex;
	align-items: center;
	justify-content: center;	
}
.flex_2D div.flex_2D_inner, .flex_2D section.flex_2D_inner{
	width: 50%;
}

@media only screen and (max-width: 30em) {
.flex_2D{
	display: block;
}
.flex_2D div.flex_2D_inner, .flex_2D section.flex_2D_inner{
	width: 100%;
}
}

/*flex_2E 2段 48:48→100 */
.flex_2E{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.flex_2E div.flex_2E_inner, .flex_2E section.flex_2E_inner{
	width: 48%;
}
@media only screen and (max-width: 30em) {
.flex_2E{
	display: block;
}
.flex_2E div.flex_2E_inner, .flex_2E section.flex_2E_inner{
	width: 100%;
	margin: 0 0 20px 0;
}
}


/*flex_2D 2段 30:30 中央寄せ */
.flex_2F{
	display: flex;
	align-items: center;
	justify-content: center;	
}
.flex_2F div.flex_2F_inner, .flex_2F section.flex_2F_inner{
	width: 30%;
    margin-left: 1%;
    margin-right: 1%;
}

@media only screen and (max-width: 48em) {
.flex_2F{
}
.flex_2F div.flex_2F_inner, .flex_2F section.flex_2F_inner{
	width: 40%;
    margin-left: 2%;
    margin-right: 2%;
}
}

@media only screen and (max-width: 30em) {
.flex_2F{
	display: block;
}
.flex_2F div.flex_2F_inner, .flex_2F section.flex_2F_inner{
	width: 90%;
    margin: 0 auto;
}
}


/*flex_3A 3段 32%左右均等配置*/
.flex_3A{
	display: flex;
	flex-wrap: wrap;
	justify-content:space-between;
}
.flex_3A > div, .flex_3A > li , .flex_3A > section{
	width: 31%;
	margin: 0 0 10px 0;
}

@media only screen and (max-width: 48em) {
.flex_3A{
	display: block;
}
.flex_3A > div, .flex_3A > li , .flex_3A > section{
	width: 100%;
	margin: 0 0 10px 0;
}
}


/*flex_3B 3段 32% 左寄せ配置右空き ソート対策用*/
.flex_3B{
	display: flex;
	flex-wrap: wrap;
	justify-content:flex-start;
}
.flex_3B > div, .flex_3B > li , .flex_3B > section{
	width: 31%;
	margin: 0 2% 10px 0;
}

@media only screen and (max-width: 48em) {
.flex_3B{
	display: block;
}
.flex_3B > div, .flex_3B > li , .flex_3B > section{
	width: 100%;
	margin: 0 0 10px 0;
}
}

/*flex_3C 3段 32%左右均等配置 変動なし*/
.flex_3C{
	display: flex;
	flex-wrap: wrap;
	justify-content:space-between;
}
.flex_3C > div, .flex_3C > li , .flex_3C > section{
	width: 31%;
	margin: 0 0 0 0;
}

@media only screen and (max-width: 48em) {
}



/* ===========txtBox=========== */
/*01*/
.textbox_01{
	padding: 10px;
}

.textbox_02{
	padding: 10px;
	background-color: #f1f1f1;
}
/* 480px */
@media only screen and (max-width: 30em) {
.textbox_02{
	padding: 30px 10px;
}
}

.textbox_03{
	padding: 40px;
	background-color: #ffffff;
}
/* 480px */
@media only screen and (max-width: 30em) {
.textbox_03{
	padding: 20px 10px;
	background-color: #ffffff;
}
}

.textbox_04{
	padding: 10px 0;
	background-color: #ffffff;
}

/* ===========article=========== */

/* ===========section=========== */

/* ===========div=========== */
div.box_01{
	padding: 10% 0;
}
/* 480px */
@media only screen and (max-width: 30em) {

}


/* =========== flow_box -フロー説明用- =========== */
div.flow_box{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
div.flow_box .flow_item{
    display: flex;
    align-items: center;
    margin: 10px 0;
    padding: 10px;
    width: 200px;
    height: 120px;
    text-align: center;
    background-color: #ffdc10;
    border-radius: 5px;
    box-sizing: border-box;
}
div.flow_box .flow_item span{
    display: block;
    width: 100%;
    text-align: center;
    font-weight: bold;
    font-size: 16px;
}
div.flow_arrow{
    width: 50px;
    margin: 10px 0;
    background-image: url('/photoservice/escapeweddingphoto/common/svg/icon_link_02.svg');
    background-repeat: no-repeat;
    background-size: 30px 30px;
    background-position: center center;
}
/* 768px */
@media only screen and (max-width: 48em) {
    div.flow_box .flow_item{
        width: 150px;
        height: 100px;
    }
    div.flow_box .flow_item span{
        font-size: 14px;
    }
    div.flow_arrow{
        width: 40px;
        background-size: 25px 25px;
    }
}
/* 480px */
@media only screen and (max-width: 30em) {
    div.flow_box .flow_item{
        width: 120px;
        height: 70px;
    }
    div.flow_box .flow_item span{
        font-size: 12px;
    }
    div.flow_arrow{
        width: 20px;
        background-size: 15px 15px;
    }
}

/* =========== designBoxSetting =========== */
/* designBoxA */
.designbox_A{
    position: relative;
    z-index: 1;
    padding: 0px;
    height: 100%;
    width: 100%;
    box-sizing: border-box;
}
.designbox_A .designbox_A_inner{
    padding: 20px;
    height: 100%;
    width: 100%;
    box-sizing: border-box;
}

.designbox_A::before{
    display: block;
    content: "";
    position: absolute;
    top:-5px;
    left: -5px;
    width: 25px;
    height: 25px;
    background-color: #3E3E3E;
    z-index: 2;
}

@media only screen and (max-width: 48em) {
.designbox_A{
    height: 100%;
    width: 96% !important;
    margin: 0 auto 10px !important;
}
}


/* designBoxB */
.designbox_B{
    position: relative;
    z-index: 1;
    padding: 30px 20px;
    box-sizing: border-box;
    box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
}
.designbox_B::before{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    background:linear-gradient(135deg,#CAEBF2 0,#CAEBF2 50%,#fff 50%,#fff 100%);
}

/* designBoxC */
.designbox_C{
    position: relative;
    z-index: 1;
    padding: 30px 30px;
    box-sizing: border-box;
    box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
}


/* designBoxD */
.designbox_D{
    position: relative;
    z-index: 1;
    padding: 10px 10px;
    width: 300px;
    height: 300px;
    box-sizing: border-box;
    border-radius: 300px;
    box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
}
.designbox_D::after{
    position: absolute;
    top: 0;
    right: 10px;
    content: "";
    display: block;
    background-image: url("/photoservice/escapeweddingphoto/common/img/icon_3.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 80px;
    height: 80px;
}
.designbox_D p{
    position: absolute;
    top: 0;
    bottom: 0;
    height: 50px;
    width: 100%;
    margin: auto;
    text-align: center;
    font-size: 22px;
}
/* 960px */
@media only screen and (max-width: 60em) {
.designbox_D{
    width: 250px;
    height: 250px;
    border-radius: 250px;
}
.designbox_D p{
    font-size: 20px;
}
}
/* 768px */
@media only screen and (max-width: 48em) {
.designbox_D{
    width: 200px;
    height: 200px;
    border-radius: 200px;
}
.designbox_D::after{
    top: 0;
    right: 10px;
    width: 50px;
    height: 50px;
}
.designbox_D p{
    height: 50px;
    font-size: 16px;
}
}
/* 600px */
@media only screen and (max-width: 37.5em) {
.designbox_D{
    width: 180px;
    height: 180px;
    border-radius: 180px;
}
.designbox_D::after{
    top: 0;
    right: 10px;
    width: 50px;
    height: 50px;
}
.designbox_D p{
    height: 50px;
    font-size: 14px;
}
}
/* 480px */
@media only screen and (max-width: 30em) {
.designbox_D{
    width: 180px;
    height: 180px;
    border-radius: 180px;
    padding: 5px;
}
.designbox_D::after{
    top: 0;
    right: 10px;
    width: 50px;
    height: 50px;
}
.designbox_D p{
    height: 30px;
    font-size: 12px;
}
}


/* ===========note_box=========== */
div.form_note_box{
    width: 80%;
    height: 150px;
    padding: 15px;
    margin: 0 auto;
    overflow-y: scroll;
    border: 1px solid #ccc;
    background-color: #f5f5f5;
}


/* ===========heading1=========== */
/*各ページ冒頭*/
h1.heading1_001{
    margin: 30px 0;
    font-size: 14px;
    text-align: center;
    letter-spacing: 2px;
	line-height: 1.2;
}
h1.heading1_001 > span{
	display: block;
    font-size: 36px;
    letter-spacing: 2px;
	font-family: 'Montserrat', sans-serif;
}


/* ===========heading2=========== */
/*001*/
h2.heading2_001{
    margin: 20px 0;
    font-size: 28px;
    text-align: center;
    letter-spacing: 2px;
	font-family: 'Montserrat', sans-serif;
	}
h2.heading2_001.wh{
	color: #ffffff;
	}
h2.heading2_001 > span{
	font-size: 16px;
	}    
    
/* 768px */
@media only screen and (max-width: 48em) {
	h2.heading2_001{
		font-size: 34px;
		}
}
/* 480px */
@media only screen and (max-width: 30em) {
	h2.heading2_001{
		font-size: 28px;
		}
}

/*002 汎用h2*/
h2.heading2_002{
    margin: 0 0 30px 0;
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 2px;
    line-height: 1.2;
    color: #473D24;
	}
h2.heading2_002 span{
    display: block;
    font-size: 16px;
    font-weight: normal;
    letter-spacing: 2px;
	}

/* 768px */
@media only screen and (max-width: 48em) {
h2.heading2_002{
    font-size: 28px;
	}
}
/* 480px */
@media only screen and (max-width: 30em) {
h2.heading2_002{
    font-size: 24px;
	}
}


/*003 アイコン付き見出し*/
h2.heading2_003{
    position: relative;
    margin: 0 0 30px 0;
    padding: 0;
    font-size: 24px;
    font-weight: normal;
    text-align: center;
    color: #303030;
    text-shadow: 1px 1px 3px #B9D7E6;
    letter-spacing: 3px;
	}


h2.heading2_003::before{
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0 5px 0 0;
    background-image: url("../img/icon_1.png");
    background-size: contain;
    z-index: 2;
}


/* 768px */
@media only screen and (max-width: 48em) {
h2.heading2_003{
	}
}
/* 480px */
@media only screen and (max-width: 30em) {
h2.heading2_003{
	}
}



/*004 ユーティリティ見出し*/
h2.heading2_004{
	margin: 0 0 20px 0;
	padding: 0;
	width: 100%;
	text-align: left;
	font-size: 24px;
	font-size: 2.4rem;
	line-height: 1.2;
	letter-spacing: 1.8px;
	font-weight: bold;
	color: #000;
}
h2.heading2_004 > span{
	font-size: 13px;
	}
/* 768px */
@media only screen and (max-width: 48em) {
h2.heading2_004{
	}
}
/* 480px */
@media only screen and (max-width: 30em) {
h2.heading2_004{
	font-size:18px;
	letter-spacing:3px;
	}
}


/*005 横線付き見出し*/
h2.heading2_005{
    position: relative;
	margin: 0 0 20px 0;
	padding: 0;
	width: 100%;
	text-align: center;
	font-size: 24px;
	font-size: 2.4rem;
	line-height: 1.2;
	letter-spacing: 1.8px;
	font-weight: bold;
}
h2.heading2_005::before{
    position: absolute;
    top: 0;
    bottom: 0;
    right: auto;
    left: 0;
    margin: auto;
    content: "";
    display: block;
    height: 1px;
    width: 35%;
    background-color: #3E3E3E;
}
h2.heading2_005::after{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: auto;
    margin: auto;
    content: "";
    display: block;
    height: 1px;
    width: 35%;
    background-color: #3E3E3E;
}

/* 768px */
@media only screen and (max-width: 48em) {
h2.heading2_005::before{
    width: 20%;
}
h2.heading2_005::after{
    width: 20%;
}
}
/* 480px */
@media only screen and (max-width: 30em) {
h2.heading2_005::before{
    width: 5%;
}
h2.heading2_005::after{
    width: 5%;
}
}

/*006 ユーティリティ見出し*/
h2.heading2_006{
	margin: 40px 0 20px 0;
	padding: 0;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
    border-bottom: solid 1px #000;
	color: #000;
}


/* ===========heading3=========== */
h3.heading3_001{
	position: relative;
	margin: 0 0 20px 0;
	padding: 0;
	font-size: 18px;
	font-size: 1.8rem;
    font-weight: normal;
	line-height: 1.2;
	text-align: center;
	}
h3.heading3_001 span{
	display: block;
	font-size: 12px;
	font-size: 1.2rem;
	font-weight: normal;
	}

/* 768px */
@media only screen and (max-width: 48em) {
h3.heading3_001{
	font-size: 16px;
	font-size: 1.6rem;
	}
}


/* span内にナンバリング */
h3.heading3_002{
	position: relative;
	margin: 0 0 24px 0;
	padding: 0;
	font-size: 22px;
	font-size: 2.2rem;
    font-weight: normal;
	line-height: 1.2;
	text-align: left;
	}
h3.heading3_002 span{
	display: inline-block;
    padding: 5px 12px;
    margin: 0 5px 0 0;
    color: #fff;
	font-weight: normal;
    background-color: #CAEBF2;
	}
    
/* 下線+右側にspan装飾 */
h3.heading3_003{
	position: relative;
	margin: 0 0 18px 0;
	padding: 0;
	font-size: 16px;
	font-size: 1.6rem;
    font-weight: normal;
	line-height: 1.2;
	text-align: left;
    border-bottom: solid 3px #CAEBF2;
	}
h3.heading3_003 span{
    display: inline-block;
    float: right;
    color: #CAEBF2;
	font-weight: normal;
	}
h3.heading3_003::after {
  display: block;
  visibility: hidden; 
  clear: both;
  height: 0;
  content: "";
}


/* 通常h3 */
h3.heading3_004{
	margin: 20px 0 10px 0;
	padding: 0;
	font-size: 16px;
	font-size: 1.6rem;
    font-weight: bold;
	}


/* 通常水色囲み */
h3.heading3_005{
	margin: 0 0 18px 0;
	padding: 5px 0;
    text-align: center;
	font-size: 14px;
	font-size: 1.4rem;
    font-weight: bold;
    border: solid 1px #CAEBF2;
	}

/* ===========heading4=========== */
/*001*/
h4.heading4_001{
	font-size: 14px;
	font-size: 1.4rem;
    font-weight: bold;
	}
@media only screen and (max-width: 48em) {
h4.heading4_001{
	}
}

/* ===========heading5=========== */
h5.heading5_001{
	}
@media only screen and (max-width: 48em) {
h5.heading5_001{
	}
}



/* ===========txt=========== */

/* 01=通常テキスト */
.txt_01{
	margin: 0 0 0 0;
	font-size: 1.4px;
	font-size: 1.4rem;
    letter-spacing: 1.6px;
    line-height: 2.2;
    text-align: justify;
	}
.txt_01b{
	margin: 0 0 0 0;
	font-size: 1.4px;
	font-size: 1.4rem;
    line-height: 1.8;
    text-align: left;
	}
/* 768px */
@media only screen and (max-width: 48em) {
.txt_01{
	margin: 0 0 0 0;
	font-size: 1.2px;
	font-size: 1.2rem;
	}
.txt_01b{
	margin: 0 0 0 0;
	font-size: 1.2px;
	font-size: 1.2rem;
	}
}


/* 02=通常センター */
.txt_02{
    text-align: center;
    margin: 20px 0;
    font-size: 14px;
	}
/* 768px */
@media only screen and (max-width: 48em) {
.txt_02{

	}
}


.txt_03{
	margin: 0 0 10px 0;
	font-size: 1.6px;
	font-size: 1.6rem;
    letter-spacing:normal;
    line-height: 1.4;
	}
.txt_03 span{
	margin: 0 0 10px 0;
	font-size: 1.2px;
	font-size: 1.2rem;
    letter-spacing:normal;
    line-height: 1.4;
	}
.txt_03::before{
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 5px 0 0;
    background-image: url("../img/icon_2.png");
    background-size: contain;
    z-index: 2;
}

/* 太字影テキスト */
.txt_04{
    margin: 0 0 30px 0;
    padding: 0;
    font-size: 28px;
    text-align: center;
    color: #000000;
    font-weight: bold;
    text-shadow: 1px 1px 3px #fff100;
    letter-spacing: 3px;
	}

.txt_05{
	margin: 0 0 10px 0;
	font-size: 1.2px;
	font-size: 1.2rem;
    letter-spacing:normal;
    line-height: 1.4;
	}



/* ===========leadTxt=========== */

/*01*/
.lead_txt_01{
    text-align: center;
    margin: 20px 0;
    font-weight: normal;
    font-size: 16px;
	}

/* 768px */
@media only screen and (max-width: 48em) {
.lead_txt_01{
	margin: 0 0 15px 0;
	font-size: 1.2px;
	font-size: 1.2rem;
	}
}

/* ===========figure=========== */
/* 001 */
figure.figure_001{
	margin: 0 0 20px 0;
	}
figure.figure_001 img{
	margin: 0 0 10px 0;
	}
figure.figure_001 figcaption{
	text-align: center;
	font-size: 16px;
	}
figcaption.figtxt_001{
	font-style:italic;
	font-family:'Times New Roman',Times,serif;
	font-size: 16px;
	margin: 15px 0 0;
	font-weight: bold;
}
/* 480px */
@media only screen and (max-width: 30em) {
figcaption.figtxt_001{
	font-size: 12px;
	font-size: 1.2rem;
	}
}

/* ===========a=========== */
a.a_01{
	text-decoration: underline;
}
a.a_01:hover{
	text-decoration: none;
}

a.a_02{
	text-decoration: underline;
}
a.a_02:hover{
	text-decoration: none;
}

/* ===========BTNsetting=========== */
.btn_01{
	width: 300px;
	display: block;
	font-size: 14px;
	margin: 0 auto;
	padding: 15px 0;
	letter-spacing: 1.3px;
	line-height: 1;
	text-align: center;
    text-decoration: none;
	background-color: #284f57;
	vertical-align: middle;
	color: #fff;
	border-radius: 5px;
	background-image: url(/photoservice/escapeweddingphoto/common/svg/icon_btn_01.svg);
	background-repeat:no-repeat;
	background-position: right 10px center;
	background-size: 15px 30px;
	transition: all 0.3s;
    cursor: pointer;
	font-family: 'Montserrat', sans-serif;
	}
.btn_01:hover{
	background-position: right 3px center;
	}
.btn_01 span{
    font-family: "Noto Serif JP", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "ヒラギノ明朝 Pro W3", "HiraMinProN-W3", "HG明朝E", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HGS明朝E", "ヒラギノ明朝 Pro W6", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif !important;
    font-size: 10px;
}
/* 768px */
@media only screen and (max-width: 48em) {
}
/* 480px */
@media only screen and (max-width: 30em) {
}

/* btn_01の中央寄せバージョン */
.btn_02{
	width: 300px;
	margin: 0 auto;
	}
.btn_02 a{
	display: block;
	width: 100%;
	font-size: 12px;
	padding: 15px 0;
    text-decoration: none;
	letter-spacing: 1.3px;
	line-height: 1;
	text-align: center;
	background-color: #CAEBF2;
	vertical-align: middle;
	color: #fff;
	background-image: url(../svg/icon_btn_01.svg);
	background-repeat:no-repeat;
	background-position: right 10px center;
	background-size: 15px 30px;
	transition: all 0.3s;
	}
.btn_02 a:hover{
	background-position: right 3px center;
	}

/* 768px */
@media only screen and (max-width: 48em) {
.btn_02 a{
	}
}
/* 480px */
@media only screen and (max-width: 30em) {
.btn_02 a{
	}
}

/*btn_03*/
.btn_03{
	text-align: center;
	margin: 0 auto;
	}
.btn_03 a{
	background-image: url(/photoservice/escapeweddingphoto/common/img/icon_01.svg);
	background-size: 20px 12px;
	background-repeat: no-repeat;
	background-position: center left;
	padding: 0 0 0 20px;
	margin: 0 auto 10px;
	font-size: 13px;
	font-size: 1.3rem;
	}

.btn_04{
	width: 300px;
    margin: 0 auto;
	}
.btn_04 a{
    position: relative;
	display: block;
	width: 100%;
	font-size: 12px;
	padding: 25px 0;
	letter-spacing: 1.3px;
	line-height: 1;
	text-align: center;
    text-decoration: none;
	background-color:　transparent;
	color: #ffffff;
    border-radius: 30px;
	transition: all 0.3s;
    z-index: 10;
	}
 .btn_04 a span{
    position: absolute;
    bottom: 2px;
    left:0;
    padding: 25px 0;
    width: 100%;
    display: block;
	background-color: #303030;
	color: #000;
    border-radius: 30px;
    font-size: 14px;
    font-weight: bold;
    z-index: 11;
    transition: all 0.3s;
	}

.btn_04 a:hover span{
	bottom: 8px;
	}

.btn_05{
	width: 300px;
	display: block;
	font-size: 18px;
	margin: 0 auto;
	padding: 5px 0 10px;
	letter-spacing: 1.3px;
	line-height: 1;
	text-align: center;
    text-decoration: none;
	background-color: #284f57;
	vertical-align: middle;
	color: #00B900;
	border-radius: 5px;
	background-image: url(/photoservice/escapeweddingphoto/common/svg/icon_btn_05.svg);
	background-repeat:no-repeat;
	background-position: right 10px center;
	background-size: 50px 30px;
	transition: all 0.3s;
    cursor: pointer;
    font-family: "Noto Sans JP", sans-serif ,"メイリオ", "Meiryo", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: bold;
	}
.btn_05:hover{
	}
.btn_05 p{
    margin-bottom: 5px
}
.btn_05 span{
    font-size: 10px;
    color: #fff;
}

.btn_06{
	width: 200px;
	display: block;
	font-size: 12px;
	margin: 0 auto;
	padding: 7px 0;
	line-height: 1;
	text-align: center;
    text-decoration: none;
	background-color: #000000;
	vertical-align: middle;
	color: #fff;
	border-radius: 5px;
	background-repeat:no-repeat;
	background-position: right 10px center;
	background-size: 15px 30px;
	transition: all 0.3s;
    cursor: pointer;
	font-family: 'Montserrat', sans-serif;
	}
.btn_06:hover{
	background-position: right 3px center;
	}
.btn_06 span{
    font-family: "Noto Serif JP", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "ヒラギノ明朝 Pro W3", "HiraMinProN-W3", "HG明朝E", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HGS明朝E", "ヒラギノ明朝 Pro W6", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif !important;
    font-size: 10px;
}

/* 768px */
@media only screen and (max-width: 48em) {
.btn_04 a{
	}
}
/* 480px */
@media only screen and (max-width: 30em) {
.btn_04{
	width: 280px;
    margin: 0 auto;
	}
.btn_04 a{
	font-size: 10px;
	padding: 20px 0;
	}
 .btn_04 a span{
     padding: 20px 0;
	background-color: #3E3E3E;
	color: #000000;
    border-radius: 30px;
    font-size: 14px;
	}
}



/* span */
/*span_01 btn01と同じスタイルで文字だけ表現*/
span.span_01{
	display: block;
	text-align: center;
	font-family: 'Nothing You Could Do', cursive;
	font-size: 34px;
	font-weight: normal;
	letter-spacing: 1.3px;
	line-height: 0;	
}
span.span_01::after{
	display: inline-block;
	content:url(/photoservice/escapeweddingphoto/common/img/btn_after_bk.svg);
	height: 35px;
	width: 25px;
	padding: 0 0 0 10px;
}

span.span_02{
	display: block;
	font-family: 'Spectral', serif;
	font-size: 26px;
	color: #ffffff;
	text-align: center;
	font-weight: normal;
	line-height: 1;
}
@media only screen and (max-width: 30em) {
span.span_02{
	font-size: 16px;
}
}

/* strong */
strong.strong_01{
	display: block;
	font-family: 'Alex Brush', cursive;
	font-size: 100px;
	color: #ffffff;
	text-align: center;
	font-weight: normal;
	line-height: 1;
}
/* 480px */
@media only screen and (max-width: 30em) {
strong.strong_01{
	font-size: 50px;
}
}


/* Fair Banner */
.fairBannerArea{
    padding: 20px auto; 
    text-align: center;
}
.fair_banner_area a {
    display: block;
    margin: auto;
    width: 600px;
    background-color: #f9f4eb;
    border: 2px solid #BCA475;
}
.fair_icon{
background-color: #000;
color: #fff;
padding: 2px ;
text-align: center;
}
.fair_icon2{
background-color: #284f57;
color: #fff;
padding: 10px ;
text-align: center;
border-radius: 5px;
width: 200px;
margin: auto;
}
h2.fairBannerArea_title{
    font-size: 22px;
    font-weight: normal;
    margin-bottom: 5px;
}
h2.fairBannerArea_title span{
    font-size: 18px;
}
.fair_banner_area_txt {
    float: right;
    padding: 10px;
    width: 70%;
}
.fair_banner_area_img {
    width: 30%;
}

/* 480px */
@media only screen and (max-width: 30em) {
.fair_banner_area {
    padding: 10px 0 10px ;
}
.fair_banner_area a{
    text-align: center;
    width: 95%;
    padding: 10px 0 38px 0;
}
h2.fairBannerArea_title{
    font-size: 16px;
    margin-bottom: 5px;
}
h2.fairBannerArea_title span{
    font-size: 12px;
}
}
/* Fair Banner */

/* =====================UL TXT LIST===================== */
ul.txt_list_01{
	text-align:left;
    font-size: 12px;
    padding: 5px 0 5px 15px;
	}
ul.txt_list_01 li{
	}


/* 02 */
ul.txt_list_02{
	text-align:left;
    font-size: 14px;
    padding: 5px 0 5px 20px;
    line-height: 1.8;
	}
ul.txt_list_02 li{
    margin: 0 0 10px 0;
	}

/* 768px */
@media only screen and (max-width: 48em) {
ul.txt_list_02{
	text-align:left;
    font-size: 12px;
    padding: 5px 0 5px 15px;
	}
}



/* =====================UL INDEX LIST===================== */
/* index_list_01 ニュース用インデックスリスト */
ul.index_list_01{
	list-style:none;
	display: flex;
	/*justify-content: space-between;*/
	flex-wrap: wrap;
	}
ul.index_list_01 li{
	position: relative;
	width: 100%;
	margin: 0;
	padding: 10px 0 0 0;
	border-bottom: dashed 1px #000;
	}
ul.index_list_01 li:first-child{
	padding-top: 10px;
	border-top: dashed 1px #000;
	}
ul.index_list_01 li a{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	transition: all 0.3s;
	}
ul.index_list_01 li span.news_tag{
	display: inline-block;
	background-color: #000;
	color: #fff;
	text-align: center;
	margin: 0 auto 5px;
	padding: 1px 0;
	font-size: 12px;
	font-size: 1.2rem;
	width: 100px;
	}
ul.index_list_01 li span.news_date{
	display: inline-block;
	text-align: left;
	margin: 0;
	padding: 0;
	font-size: 10px;
	font-size: 1.0rem;
	}
ul.index_list_01 li p{
	margin: 0 0 10px 0;	
	}
/*hover*/
ul.index_list_01 li a:hover{
	opacity: 0.6;
	background-color: rgba(00,00,00,0.2);
	}
/* 480px */
@media only screen and (max-width: 30em) {

}



/* =====================UL INDEX LIST 02===================== */
/* index_list_01 ニュース用インデックスリスト */
ul.index_list_02{
	list-style:none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	}
ul.index_list_02 li{
	width: 48%;
	margin: 0 0 15px 0;
	padding: 0;
	}

/* 480px */
@media only screen and (max-width: 30em) {
ul.index_list_02{
	display: block;
	}
ul.index_list_02 li{
	width: 100%;
	margin: 0 0 15px 0;
	}
}


/* =====================UL INDEX LIST 03===================== */
/* ギャラリーのインデックスリスト */
ul.index_list_03{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	list-style:none;
	margin: 0 auto;
	width: 100%;
	padding:0;
	}
ul.index_list_03 li{
	width: 24.8%;
	margin: 0 0 0.2% 0;
	}
ul.index_list_03 li a{
	display: block;
	}
ul.index_list_03 li a img{
	border-radius: 3px 3px 3px 3px;
	}
/* 480px */
@media only screen and (max-width: 30em) {
ul.index_list_03 li{
	/*width: 49.5%; 2段にする場合
	margin: 0 0 1% 0;*/
	}
}


/* =====================UL INDEX LIST 04===================== */
/* プランリスト */
ul.index_list_04{
	margin: 0 auto 30px;
	padding:0;
	text-align: center;
	width: 100%;
	list-style: none;
	}
ul.index_list_04 li{
	font-size: 14px;
	margin: 0 0 5px 0;
	}

/* =====================UL INDEX LIST 05 PDFリスト===================== */
/* PDFリスト */
ul.index_list_05{
	margin: 0 0 10px 0;
	padding:20px;
	width: 100%;
	list-style: none;
	}
ul.index_list_05 li{
	font-size: 14px;
    font-weight: bold;
    padding: 0px;
	margin: 0 0 15px 0;
    background-color: #ffffff;
	}
ul.index_list_05 li a{
    display: block;
	font-size: 14px;
    padding: 10px 10px 10px 20px;
    text-decoration: none;
    background-color:transparent;
    background-image: url("/photoservice/escapeweddingphoto/common/img/modal.png");
    background-position: right 10px center;
    background-size: 20px 20px;
    background-repeat: no-repeat;
    transition: all 0.3s;
	}

ul.index_list_05 li a:hover{
    background-color:#fff100;
	}





/* =====================UL SLIDER LIST===================== */
/* slider 01 onlyPadding*/
ul.slider_list_01{

}
ul.slider_list_01 li{
	margin: 0;
	padding: 0 5px;
}




/* =====================Definition List===================== */
/* 01  募集要項*/
dl.definition_ist_01{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    text-align: left;
}
dl.definition_ist_01 div{
    width: 48%;
    margin: 0;
    padding: 0;
}
dl.definition_ist_01 dt{
    float: left;
    width: 80px;
    padding: 10px 0;
    border-top: solid 1px #A5A5A5;
    font-size: 12px;
    font-weight: bold;
}
dl.definition_ist_01 dd{
    float: left;
    width: calc(100% - 80px);
    padding: 10px 0;
    border-top: solid 1px #A5A5A5;
    font-size: 12px;
}
/* 768px */
@media only screen and (max-width: 48em) {
dl.definition_ist_01{
    display: block;
}
dl.definition_ist_01 div{
    width: 100%;
}dl.definition_ist_01 dt{
    font-size: 10px;
}
dl.definition_ist_01 dd{
    font-size: 10px;
}
}


/* 02 未使用 */
dl.definition_ist_02{
}

/* 480px */
@media only screen and (max-width: 30em) {
}

/* 03 バイオグラフィー */
dl.definition_ist_03{
	text-align: left;
	margin: 0 0 10px 0;
	border-bottom: solid 1px #e5e5e5;
}
dl.definition_ist_03:after {
  display: block;
  visibility: hidden; 
  clear: both;
  height: 0;
  content: "";
}
dl.definition_ist_03 dt{
	display: block;
	float: left;
	width: 80px;
	margin: 0 0 5px 0;
	padding: 5px 0;
	border-top: solid 1px #e5e5e5;
}

dl.definition_ist_03 dd{
	display: block;
	float: left;
	width: calc(100% - 80px);
	margin: 0 0 5px 0;
	padding: 5px 0;
	border-top: solid 1px #e5e5e5;
}


/* 04 Q&A */
dl.definition_ist_04{
	text-align: left;
    color: #000;
}
dl.definition_ist_04 dt{
	background-image: url('/photoservice/escapeweddingphoto/common/svg/qa_icon_Q.svg');
	background-size: 25px 25px;
	background-position: left top;
	background-repeat: no-repeat;
	display: block;
	margin: 0 0 15px 0;
	padding: 0 0 0 35px;
	font-size: 18px;
	line-height: 1.2;
}
dl.definition_ist_04 dd{
	background-image: url('/photoservice/escapeweddingphoto/common/svg/qa_icon_A.svg');
	background-size: 25px 25px;
	background-position: left top;
	background-repeat: no-repeat;
	margin: 0 0 20px 0;
	padding: 0 0 20px 35px;
	display: block;
	font-size: 14px;
    border-bottom: solid 1px #D6D6D6;
}
/* 480px */
@media only screen and (max-width: 30em) {
    dl.definition_ist_04 dt{
        font-size: 14px;
        background-size: 20px 20px;
        margin: 0 0 5px 0;
        padding: 0 0 0 30px;
    }
    dl.definition_ist_04 dd{
        font-size: 12px;
        background-size: 20px 20px;
        margin: 0 0 20px 0;
        padding: 0 0 20px 30px;
    }
}


/*05 会社情報*/
dl.definition_ist_05{

}
dl.definition_ist_05 dt{
	margin: 0 0 20px 0;
	float: left;
	width: 100px;
}
dl.definition_ist_05 dd{
	margin: 0 0 20px 0;
	float: left;
	width: calc(100% - 100px);
}
/* 480px */
@media only screen and (max-width: 30em) {
    dl.definition_ist_05{

    }
    dl.definition_ist_05 dt{
        margin: 0 0 20px 0;
        float: left;
        width: 100px;
    }
    dl.definition_ist_05 dd{
        margin: 0 0 20px 0;
        float: left;
        width: calc(100% - 100px);
    }
}


/* ===========アコーディオン用=========== */
dl.definition_list_06{
	}
dl.definition_list_06 dt{
    position: relative;
	display:block;
	margin:0 0 5px 0;
	padding:10px 0;
	font-size:16px;
	font-size:1.6rem;
    font-weight: bold;
	letter-spacing:1.2px;
	transition:all 0.6s;
    text-align: center;
	cursor:pointer;
	background-color:#303030;
	}
dl.definition_list_06 dt::before{
    position: absolute;
    right: 5px;
    top: 0;
    bottom: 0;
    height: 5px;
    margin: auto;
	content:"▼";
    display: block;
    line-height: 0;
	}
dl.definition_list_06 dt.isshow::before{
	content:"▲" !important;
	}
dl.definition_list_06 dt.isshow{
	border:none !important;
	}
dl.definition_list_06 dt:hover{
	background-color:#473D24;
	}
dl.definition_list_06 dd{
	margin:0 0 1% 0;
	padding:0;
	font-size:14px;
	font-size:1.4rem;
	letter-spacing:0.6px;
	}


/* =====================image_box setting===================== */

/* 画像が3つ、1つめだけ100%、2と3は50%*/
.imagebox_1 img{
    outline: solid #fff 3px;
    margin: 0;
    padding: 0;
    line-height: 0;
}
.imagebox_1 img:first-child{
    width: 100%;
}
.imagebox_1 img:nth-child(2),.imagebox_1 img:nth-child(3){
    width: 50%;
}


/* 画像の右に説明文字 */
.imagebox_2{

}
.imagebox_2 img{
    display: inline-block;
    width: 40%;
    margin: 0 10px 0 0;
}
.imagebox_2 p{
    display: inline-block;
    vertical-align: top;
    width: 50%;
}

.imagebox_soldout{
opacity: 0.5;
}

/* ============================■■共通CLASS■■============================ */
/* clearfix */
.clearfix::after {
  display: block;
  visibility: hidden; 
  clear: both;
  height: 0;
  content: "";
}

/* ===========bgColor=========== */
.bg_color1{
	background-color: #f8f4e9;
}
.bg_color2{
	background-color: #0b1627;
}
.bg_color3{
	background-color: #58858e;
}
.bg_color4{
	background-color: #eee;
}

/* =========== flexSetting =========== */
/*flex-direction*/
.row-reverse{flex-direction: row-reverse !important;}
.column{flex-direction: column !important;}
.column-reverse{flex-direction: column-reverse !important;}

/* =========== color =========== */
.white{ color:white !important;}

/* =========== limit =========== */
.limited{width:94%; margin:0 auto;}

.limit1600{max-width:1600px; margin:0 auto;}
.limit1400{max-width:1400px; margin:0 auto;}
.limit1200{max-width:1200px; margin:0 auto;}
.limit1050{max-width:1050px; margin:0 auto;}
.limit1024{max-width:1024px; margin:0 auto;}
.limit960{max-width:960px; margin:0 auto;}
.limit768{max-width:768px; margin:0 auto;}
.limit640{max-width:640px; margin:0 auto;}
.limit480{max-width:480px; margin:0 auto;}

/* =========== 出現|削除 =========== */
.app768,.app480{display: none!important;}
/* 768px */
@media only screen and (max-width: 48em) {
.del768{display:none!important;}
.app768{display:block!important;}
}
/* 480px */
@media only screen and (max-width: 30em) {
.del480{display:none!important;}
.app480{display:block!important;}
}

/* ========== marginBottom ========== */
.mb0{ margin-bottom:0 !important; }
.mb5{ margin-bottom:5px !important; }
.mb10{ margin-bottom:10px !important; }
.mb20{ margin-bottom:20px !important; }
.mb30{ margin-bottom:30px !important; }
.mb40{ margin-bottom:40px !important; }
.mb50{ margin-bottom:50px !important; }
.mb60{ margin-bottom:60px !important; }
.mb70{ margin-bottom:70px !important; }
.mb80{ margin-bottom:80px !important; }
.mb90{ margin-bottom:90px !important; }
.mb100{ margin-bottom:100px !important; }

/* ========== marginBottomParcent ========== */
.mb0p{ margin-bottom:0 !important; }
.mb01p{ margin-bottom:1% !important; }
.mb02p{ margin-bottom:2% !important; }
.mb03p{ margin-bottom:3% !important; }
.mb05p{ margin-bottom:5% !important; }
.mb10p{ margin-bottom:10% !important; }
.mb15p{ margin-bottom:15% !important; }
.mb20p{ margin-bottom:20% !important; }
.mb30p{ margin-bottom:30% !important; }
.mb40p{ margin-bottom:40% !important; }
.mb50p{ margin-bottom:50% !important; }
.mb60p{ margin-bottom:60% !important; }
.mb70p{ margin-bottom:70% !important; }
.mb80p{ margin-bottom:80% !important; }
.mb90p{ margin-bottom:90% !important; }
.mb100p{ margin-bottom:100% !important; }

/* ========== paddingTop&BottomParcent ========== */
.pdtb0p{ padding-top:0%!important; padding-bottom:0%!important; }
.pdtb01p{padding-top:1%!important; padding-bottom:1%!important;}
.pdtb02p{padding-top:2%!important; padding-bottom:2%!important;}
.pdtb03p{padding-top:3%!important; padding-bottom:3%!important;}
.pdtb05p{padding-top:5%!important; padding-bottom:5%!important;}
.pdtb10p{padding-top:10%!important; padding-bottom:10%!important;}
.pdtb15p{padding-top:15%!important; padding-bottom:15%!important;}
.pdtb20p{padding-top:20%!important; padding-bottom:20%!important;}
.pdtb30p{padding-top:30%!important; padding-bottom:30%!important;}
.pdtb40p{padding-top:40%!important; padding-bottom:40%!important;}
.pdtb50p{padding-top:50%!important; padding-bottom:50%!important;}
.pdtb60p{padding-top:60%!important; padding-bottom:60%!important;}
.pdtb70p{padding-top:70%!important; padding-bottom:70%!important;}
.pdtb80p{padding-top:80%!important; padding-bottom:80%!important;}
.pdtb90p{padding-top:90%!important; padding-bottom:90%!important;}
.pdtb100p{padding-top:100%!important; padding-bottom:100%!important;}

/* ========== paddingTop&BottomPixel ========== */
.pdtb0{ padding-top:0px!important; padding-bottom:0px!important; }
.pdtb01{padding-top:1px!important; padding-bottom:1px!important;}
.pdtb02{padding-top:2px!important; padding-bottom:2px!important;}
.pdtb03{padding-top:3px!important; padding-bottom:3px!important;}
.pdtb05{padding-top:5px!important; padding-bottom:5px!important;}
.pdtb10{padding-top:10px!important; padding-bottom:10px!important;}
.pdtb15{padding-top:15px!important; padding-bottom:15px!important;}
.pdtb20{padding-top:20px!important; padding-bottom:20px!important;}
.pdtb30{padding-top:30px!important; padding-bottom:30px!important;}
.pdtb40{padding-top:40px!important; padding-bottom:40px!important;}
.pdtb50{padding-top:50px!important; padding-bottom:50px!important;}
.pdtb60{padding-top:60px!important; padding-bottom:60px!important;}
.pdtb70{padding-top:70px!important; padding-bottom:70px!important;}
.pdtb80{padding-top:80px!important; padding-bottom:80px!important;}
.pdtb90{padding-top:90px!important; padding-bottom:90px!important;}
.pdtb100{padding-top:100px!important; padding-bottom:100px!important;}

/* ========== txt-align ========== */
.txt_left{text-align:left !important;}
.txt_center{text-align:center !important;}
.txt_right{text-align:right !important;}
.txt_just{text-align:justify !important;}

/* ========== width ========== */
.wd100{width: 100%!important;}
.wd20{width: 20%!important;}

/* ============================■■共通CLASS■■============================ */


/* ======================parts====================== */

/* 1400px */
@media only screen and (max-width: 87.5em) {
}
/* 1200px */
@media only screen and (max-width: 75em) {
}
/* 1024px */
@media only screen and (max-width: 64em) {
}
/* 960px */
@media only screen and (max-width: 60em) {
}
/* 768px */
@media only screen and (max-width: 48em) {
}
/* 720px */
@media only screen and (max-width: 45em) {
}
/* 600px */
@media only screen and (max-width: 37.5em) {
}
/* 480px */
@media only screen and (max-width: 30em) {
}
/* 320px */
@media only screen and (max-width: 20em) {
}