@charset "utf-8";
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, figcaption, figure, section {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
	box-sizing: border-box;
}
html {
	font-size: 62.5%;
}
body, table, input, textarea, select, option {
	font-family: "Noto Sans JP", sans-serif;
}
article, aside, canvas, details, figcaption, figure, footer, header, main, hgroup, menu, nav, section, summary {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
chrome_annotation {
	border: none !important;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
img {
	vertical-align: top;
	max-width: 100%;
    height: auto;
}
address {
	font-style: normal;
}
a,
a:link {
	color: #000;
	text-decoration: none;
	transition: 0.3s;
}
/*
a:visited {
	color: #000;
}
a:hover {
	color: #000;
}
a:active {
	color: #000;
}
*/
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* 81-LXH */
/* clearfix */	
.clearfix:after {content: "";display: block;clear: both;}
/* flex */	
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}
.shippori {
	font-family: "Shippori Mincho B1", serif;
	font-weight: 500;
  }
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	min-width: 1200px;
	color: #454545;
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #FFF;
}
#container {
	text-align: left;
	overflow: hidden;
	position: relative;
}
.fax,
a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}
#main {
/*	margin-bottom: 19.9rem;*/
}
@media all and (min-width: 897px) {
	.sp {
		display: none !important;
	}
}
@media all and (max-width: 896px) {
	.fixed {
		position: fixed;
		width: 100%;
		height: 100%;
	}
	body {
		min-width: inherit;
		font-size: 1.6rem;
	}
	a:hover,
	a:hover img {
		opacity: 1 !important;
	}
	.pc {
		display: none !important;
	}
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
	#main {
/*		margin-bottom: 10rem;*/
	}
}

@media all and (max-width: 374px) {
	html {
		font-size: 2.5vw;
	}
}



/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#gHeader {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	min-width: 1300px;
	z-index: 100;
	background-color: #a85733;
	box-sizing: border-box;
}
#gHeader .hBox h1 img {
	width: 140px;
}
/*
#gHeader .hBox {
	max-width: 120rem;
	margin: 0 auto;
	align-items: center;
}
*/

.gNavi li a {
    position: relative;
	color: #fff !important;
    font-size: 1.6rem;
    font-weight: 500;
    transition: 0.3s;
}
.gNavi li a::after {
	position: absolute;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background: #fff;
	bottom: -6px;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform 0.3s;
}

.gNavi li a:hover::after {
	transform: scale(1, 1);
}

@media all and (max-width: 896px) {
	#gHeader {
		background: none;
		min-width: 100%;
	}
	#gHeader .hBox {
		width: 100%;
		height: 53px;
		background: #fff;
		z-index: 9998;
	}

	#gHeader .hBox h1 img {
		width: 86px;
	}


}

/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
@media all and (min-width: 897px) {
	.gNavi {
		display: flex !important;
		position: absolute;
		right: 20px;
		top: 25px;
		font-family: "Shippori Mincho B1", serif;
		/* transform: translateX(-50%); */
	}
	.gNavi a:hover {
		opacity: 0.7;
	}
	.gNavi .inner {
		width: 222px;
		display: none;
		position: absolute;
		bottom: -324px;
		left: 50%;
		transform: translateX(-50%);
		border: 1px solid #f0a52d;
	}

	.gNavi li.on .inner {
		display: block;
		transition: all .3s ease;
	}
	.gNavi .inner li {
		font-size: 1.6rem;
		color: #fff !important;
		font-weight: bold;
		text-align: center;
		border-bottom: 1px solid #bcbcbc;
		background-color: #fff;
	}
	.gNavi .inner li:last-child {
		border-bottom: none;
	}
	.gNavi .inner li a {
		padding: 14px 10px;
		display: block;
		font-size: 1.6rem;
		color: #fff !important;
		font-weight: bold;
		text-align: center;
		/* border-bottom: 1px solid #bcbcbc; */
		background-color: #fff;
	}
	#gHeader.fixed .gNavi, #gHeader.white .gNavi {
		top: 25px;
		right: 40px;
	}
	#gHeader.fixed .gNavi > li, #gHeader.white .gNavi > li {
		margin: 0 20px;
	}
	.pageTop a:hover {
		opacity: 0.7;
	}
	#gFooter .topBox li a:hover {
		opacity: 0.7;
	}
	#gFooter .rBox a:hover {
		opacity: 0.7;
	}
}

#gHeader {
	width: 100%;
	height: 80px !important;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 500;
	position: fixed;
}
#gHeader.fixed {
	position: fixed;
}
#gHeader.white {
	background: #fff;
	box-shadow: 0px 0px 50px -24px #c7c7c7;
}
#gHeader .ttl02 {
	display: none;
}
#gHeader.fixed .ttl01, #gHeader.white .ttl01 {
	display: none;
}
#gHeader.fixed .ttl02, #gHeader.white .ttl02 {
	display: block;
}
.hBox {
	width: 90%;
    padding: 10px 0;
    margin: 0 auto;
    position: relative;
    display: flex;
    background: #a85733;
}
h1 a {
	color: #fff !important;
	font-size: 1.6rem;
	line-height: 1;
	letter-spacing: 0.075em;
	font-family: 'Zen Kaku Gothic New', sans-serif;
}
h1 small {
	margin-right: 10px;
	font-size: 1.3rem;
}
.gNavi > li {
	margin: 0 20px ;
	position: relative;
}
.gNavi > li > a {
	display: block;
}
.pageTop {
	position: fixed;
	bottom: 30px;
	right: 13px;
	z-index: 400;
}

@media all and (max-width: 896px) {
	.hBox {
		padding: 9px 13px;
	}
	h1 {
		width: 100%;
	}
	h1 small {
		line-height: 1;
		font-size: 1.2rem;
	}
	#gHeader.fixed, #gHeader.white {
		height: 40px !important;
	}
	#gHeader.fixed .hBox, #gHeader.white .hBox {
		padding: 9px 13px;
		box-sizing: border-box;
	}
	#gHeader.fixed h1 .ttl02, #gHeader.white h1 .ttl02 {
		margin: 0 auto;
		width: 134px;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		z-index: 6000;
	}
	/*
	#gHeader nav {
		position: absolute;
		width: 80%;
		top: 53px !important;
		left: 20% !important;
		background: #A85733;
	}*/

	#gHeader nav {
		position: absolute;
		top: 53px;
		width: 100%;
		background:rgb(0 0 0 / 42%);
	}
	#gHeader nav .navi-inner {
		position: absolute;
		width: 80%;
		top: 0 !important;
		left: 20% !important;
		height: 100vh;
		padding: 16px;
		background: #A85733;
	}

	.gNavi {
		margin-bottom: 30px;
		overflow-y: auto;
	}
	.gNavi > li {
		border-bottom: 1px solid #fff;
		margin: 0;
		text-align: right;
	}
	.gNavi > li > a {
		font-family: "Shippori Mincho B1", serif;
		font-size: 1.55rem;
		padding: 14px 0;
		display: block;
	}
	#gHeader.fixed .gNavi > li, #gHeader.white .gNavi > li {
		margin: 0;		
	}
	.gNavi .inner {
		margin-bottom: 14px;
	}
	.gNavi .inner li {
		margin-bottom: 10px;
	}
	.gNavi .inner li a {
		padding-left: 33px;
		font-size: 1.6rem;
		font-weight: bold;
		letter-spacing: 0.2em;
		position: relative;
	}
	.gNavi .inner li a::after {
		content: "";
		display: block;
		width: 13px;
		height: 1px;
		background-color: #767676;
		position: absolute;
		top: calc(50% - 2px);
		left: 0;
		transform: translateY(-50%);
	}
	header nav {
		padding: 19px 34px;
		width: 100%;
		height: 100vh;
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 999;
		overflow: auto;
		background-color: #fff;
		box-sizing: border-box;
	}
	.menu {
		width: 29px;
		display: block;
		height: 26px;
		line-height: 0.8;
		position: absolute;
		top: 13px;
		right: 11px;
		z-index: 9999;
		cursor: pointer;
		transition: all .3s ease;
	}

	.menu::after {
    content: "MENU";
    position: absolute;
    bottom: -2px;
    font-size: 10px;
    color: #a85733;
}

	.menu span {
		width: 100%;
		height: 2px;
		background-color: #A85733;
		position: absolute;
		top: 0;
		left: 0;
		transition: all .35s ease;
		cursor: pointer;
	}
	#gHeader.fixed .menu span, #gHeader.white .menu span {
		background-color: #a85733;
	}
	.menu span:nth-of-type(2) {
		top: 6px;
	}
	.menu span:nth-of-type(3) {
		top: 12px;
	}
	.menu.on span {
		width: 37px;
	}
	.menu.on .top {
		transform: translateY(4px) translateX(0) rotate(45deg);
		background: #a85733;
		left: -4px;
	}
	.menu.on .middle {
		opacity: 0;
	}
	.menu.on .bottom {
		transform: translateY(-8px) translateX(0) rotate(-45deg);
		left: -4px;
	}

	nav .btmBox {
		color: #fff;
		font-size: 1.3rem;
	}

	nav .btmBox a {
		color: #fff;
	}

	nav .btmBox p {
		line-height: 2rem;
	}

	nav .btmBox p:nth-child(2) {
		margin-top: 20px;
	}

	nav .btmBox p .note {
        line-height: 2.4rem;
        font-size: 1.3rem;
        display: block;
	}

}
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
.pageTop {
	position: absolute;
	right: 9rem;
	top: -4rem;
	width: 8rem;
}
@media all and (min-width: 897px) {
	.pageTop a:hover {
		opacity: 0.7;
	}
}
#gFooter {
	position: relative;
	padding: 8rem 0 3rem;
	color: #FFF;
	background-color: #a85733;
}
#gFooter .fBox {
	margin-bottom: 7.2rem;

}
#gFooter .lBox {
	width: 53rem;
}
#gFooter .fLogo {
	margin-bottom: 3.2rem;
}
#gFooter .lBox p {
	margin-bottom: 3rem;
	line-height: 1.75;
	letter-spacing: 0.06em;
}
#gFooter .lBox p:last-child {
	margin-bottom: 0;
}
#gFooter .lBox p span {
	padding-left: 4em;
	text-indent: -4em;
	display: block;
}
#gFooter .lBox p .note {
	display: block;
	padding-left: 0;
	text-indent: 0;
}
#gFooter .lBox p a {
	color: #FFF;
} 
#gFooter .mapBox {
	width: 65.2rem;
}
#gFooter .mapBox .map {
	position: relative;
}
#gFooter .mapBox .map iframe {
	width: 100%;
	height: 37.8rem;
	vertical-align: top;
}
#gFooter .mapBox .title {
	margin-bottom: 1rem;
	font-size: 2.5rem;
	font-weight: 500;
	letter-spacing: 0.04em;
}
#gFooter address {
	text-align: center;
	font-style: normal;
	font-size: 1.4rem;
	letter-spacing: 0.04em;
}
@media all and (max-width: 896px) {
	#gFooter {
		padding: 2.8rem 2.5rem 2.3rem;
		background-color: #B65127;
	}
	.pageTop {
		right: 1.5rem;
		top: -2.2rem;
		width: 4.5rem;
	}
	#gFooter .fBox {
		margin-bottom: 4.4rem;
		display: block;
		font-size: 1.5rem;
	}
	#gFooter .lBox {
		margin-bottom: 3rem;
		width: auto;
	}
	#gFooter .mapBox {
		width: auto;
	}
	#gFooter .fLogo {
		margin-bottom: 2rem;
		text-align: center;
	}
	#gFooter .fLogo img {
		width: 20rem;
	}
	#gFooter .lBox p {
		margin-bottom: 2.5rem;
	}
	#gFooter .mapBox .title {
		margin-bottom: 0.3rem;
		font-size: 1.8rem;
	}
	#gFooter .mapBox .map iframe {
		height: 40rem;
	}
	#gFooter address {
		font-size: 0.8rem;
	}
	#gFooter .lBox p span {
		padding-left: 0;
		text-indent: 0;
	}
}

/*------------------------------------------------------------
	contentDogInfo
------------------------------------------------------------*/
.contentDogInfo {
    max-width: 100rem;
    border-radius: 2rem;
    background: #f7f7f7;
    padding: 4rem 4rem;
}


@media (max-width: 896px) {
    #contentDogInfo {
        padding: 1.9rem 1.9rem 2.1rem;
    }
}

/*------------------------------------------------------------
	content
------------------------------------------------------------*/
.content {
	max-width: 120rem;
	margin: 0 auto;
}
@media all and (max-width: 896px) {

}
/*------------------------------------------------------------
	pageTitle
------------------------------------------------------------*/
.cotentpageTitle {
    margin-bottom: 0rem;
    position: relative;
    height: 10rem;
}


.pageTitle {
	margin-bottom: 7rem;
	position: relative;
	height: 55rem;
	background: url("../../image/wedding/page_img.jpg") no-repeat center center / cover;
}
.pageTitle h2 {
	position: absolute;
	bottom: -2.5rem;
	width: 10rem;
	left: calc(50% + 50rem);
}

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

    .cotentpageTitle {
        margin-bottom: 0rem;
        height: 2rem;
    }

	.pageTitle {
		margin-bottom: 3.4rem;
		height: 24rem;
	}
	.pageTitle h2 {
		bottom: -1.9rem;
		width: 69px;
		left: auto;
		right: 0;
	}
}
/*------------------------------------------------------------
	headLine01
------------------------------------------------------------*/
.headLine01 {	
	color: #FFF;
	font-size: 4rem;
	text-align: center;
	background-color: #a85733;
}
.headLine01 .sub {
	padding: 2.7rem 0 2rem;
	text-align: left;
	display: inline-block;
	-webkit-writing-mode : tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
@media all and (max-width: 896px) {
	.headLine01 {
		font-size: 2.7rem;
	}
	.headLine01 .sub {
		padding: 1.7rem 0 1.5rem;
	}
}
/*------------------------------------------------------------
	headLine02
------------------------------------------------------------*/
.headLine02 {
	margin-bottom: 5.1rem;
	font-size: 3.1rem;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-align: center;
}
.headLine02 .en {
	margin-bottom: 1.9rem;
	padding: 0 2rem;
	display: inline-block;
	font-size: 2.2rem;
	font-weight: 400;
	color: #a85733;
	letter-spacing: 0.1em;
	background: url("../image/line01.png") no-repeat left center / 1.2rem ,url("../image/line02.png") no-repeat right center / 1.2rem;
}
.headLine02 .jp {
	display: block;
}
@media all and (max-width: 896px) {
	.headLine02 {
		width: 92%;
		margin: 0 auto 4rem auto;
		font-size: 2.2rem;
	}
	.headLine02 .en {
		font-size: 1.6rem;
	}
}
/*------------------------------------------------------------
	headLine03
------------------------------------------------------------*/
.headLine03 {
	margin-bottom: 6.4rem;
	font-size: 3.5rem;
	letter-spacing: 0.04em;
	text-align: center;
	color: #a85733;
}
@media all and (max-width: 896px) {
	.headLine03 {
		margin-bottom: 1.8rem;
		font-size: 2.4rem;
	}
}
/*------------------------------------------------------------
	comPhoList
------------------------------------------------------------*/
.comPhoList {
	margin: -1.6rem -1.5rem 4.5rem 0;
	overflow: hidden;
	zoom: 1;
}
.comPhoList li {
	margin: 1.6rem 1.5rem 0 0;
	float: left;
	width: 38.3rem;
}
.comPhoList .bigPhoto {
	width: 80rem;
}
@media all and (max-width: 896px) {	
	.comPhoList {
		margin: -1rem 0 3.3rem;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.comPhoList .bigPhoto {
		width: 100%;
	}
	.comPhoList li {
		margin: 1rem 0 0 0;
		float: none;
		width: calc(50% - 0.5rem);
	}
}
/*------------------------------------------------------------
  comPhoList2 (左右反転・隙間をcomPhoListと統一)
------------------------------------------------------------*/
.comPhoList2 {
  display: grid;
  grid-template-columns: 1fr 2fr; 
  grid-template-rows: 1fr 1fr;
  /* 写真同士の隙間を comPhoList の 1.5rem に合わせる */
  gap: 1.5rem; 
  /* 下の余白を comPhoList の 4.5rem に合わせる */
  margin: 0 0 4.5rem 0; 
  padding: 0;
  list-style: none;
}

.comPhoList2 .bigPhoto {
  grid-column: 2 / 3;
  grid-row: 1 / 3;
}

.comPhoList2 li {
  margin: 0; /* gridのgapで制御するためmarginは0 */
}

.comPhoList2 li img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* スマホサイズ (max-width: 896px) */
@media all and (max-width: 896px) { 
  .comPhoList2 {
    /* 横幅を100%に固定し、余計なマージンをリセット */
    width: 100%;
    margin: 0 0 3.3rem 0; 
    padding: 0;
    
    /* 隙間を1remに設定 */
    gap: 1rem;
    
    /* 横に2枚並べる設定 */
    grid-template-columns: 1fr 1fr; 
    grid-template-rows: auto;
  }
  
  .comPhoList2 .bigPhoto {
    grid-column: 1 / 3;
    grid-row: 1;
    /* 写真が切れないように、高さを固定せず比率で維持 */
    aspect-ratio: auto; 
    height: auto;
  }
  
  .comPhoList2 li {
    grid-row: 2;
    aspect-ratio: auto;
    height: auto;
  }

  .comPhoList2 li img {
    /* 画像が枠からはみ出さないように強制 */
    max-width: 100%;
    height: auto;
    object-fit: contain; /* 切れるのが嫌な場合はcontain、埋め尽くしたいならcover */
  }
}
/*------------------------------------------------------------
	comTextBox
------------------------------------------------------------*/
.comTextBox {
	max-width: 80rem;
	margin: 0 auto 8rem;
}
.comTextBox p {
	margin-bottom: 3rem;
	line-height: 1.75;
	letter-spacing: 0.06em;
}
.comTextBox p :last-child {
	margin-bottom: 0 !important;
}
@media all and (max-width: 896px) {
	.comTextBox {
		max-width: inherit;
		margin: 0 24px 8rem;
	}
	.comTextBox p {
		margin-bottom: 2.4rem;
	}
}
/*------------------------------------------------------------
	comImgBox
------------------------------------------------------------*/
.comImgBox .phoBox {
	width: 76rem;
	order: 1;
}
.comImgBox .txtBox {
	margin-top: -0.1rem;
	width: 41rem;
}
.comImgBox .headLine02 {
	margin-bottom: 3.7rem;
	text-align: left;
}
.comImgBox p {
	margin-bottom: 3rem;
	line-height: 1.75;
	letter-spacing: 0.06em;
}
.comImgBox p:last-child {
	margin-bottom: 0 !important;
}
.comImgBoxL .phoBox {
	order: 0;

}

@media all and (max-width: 896px) {
	.comImgBox {
		display: block;
	}
	.comImgBox .phoBox {
		width: auto;
	}
	.comImgBox .txtBox {
		margin: 0 2.4rem;
		width: auto;
	}
	.comImgBox .headLine02 {
		margin-bottom: 1.8rem;
		text-align: center;
	}
	.comImgBox .phoBox {
		margin: 0 -2.4rem 3.3rem;
	}
	.comImgBox .phoBox img {
		width: 100%;
	}
	.comImgBox p {
		margin-bottom: 2.7rem;
	}
}
/*------------------------------------------------------------
	comConceptBox
------------------------------------------------------------*/
.comConceptBox {
	margin-bottom: 8rem;
	padding: 6rem 2rem 7.1rem;
	position: relative;
	background: rgba(182, 81, 39, 0.05);
	border: 0.2rem solid #682f20;
}
.comConceptBox::before {
	position: absolute;
	width: 5.8rem;
	height: 5.8rem;
	left: -0.2rem;
	top: -0.2rem;
	background-color: #a85733;
	clip-path: polygon(0 0,100% 0,0 100%);
	content: "";
}
.comConceptBox p {
	max-width: 80rem;
	margin: 0 auto 3rem;
	line-height: 1.75;
	letter-spacing: 0.06em;
}
.comConceptBox p:last-child {
	margin-bottom: 0;
}
@media all and (max-width: 896px) {	
	.comConceptBox {
		padding: 2.3rem 2rem 2.6rem;
		margin: 0 2.4rem 8rem;
		border-width: 1px;
	}
	.comConceptBox::before {
		position: absolute;
		width: 3.2rem;
		height: 3.2rem;
		left: -0.1rem;
		top: -0.1rem;
	}
	.comConceptBox p {
		margin-bottom: 2.7rem;
		line-height: 1.7;
	}
}


/* comBtn */
.comBtn a {
	padding-top: 0.1rem;
	width: 37.9rem;
	height: 6.6rem;
	border-radius: 0.6rem;
	color: #a85733;
	font-size: 2rem;
	font-weight: 500;
	font-family: "Shippori Mincho B1", serif;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	border: 1px solid #a85733;
	background-color: #fff;
}
.comBtn a:after {
	margin-top: -1px;
	width: 3rem;
	height: 1px;
	position: absolute;
	top: 50%;
	right: -1.5rem;
	background-color: #A85733;
	content: "";
}
.comBtn a::before {
	background: #A85733;
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 100%;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
.comBtn .inner {
	display: block;
	position: relative;
	z-index: 5;
}
@media all and (min-width: 897px) {
	.comBtn a:hover {
		color: #fff;
	}
	.comBtn a:hover:before {
		transform: scale(1, 1);
	}
}
@media all and (max-width: 896px) {
	.comBtn a {
		margin: 0 auto;
		width: 100%;
		height: 5rem;
		max-width: 28.6rem;
		font-size: 1.5rem;
	}
}


/* comBtn02 */
ul.comBtn02 {
	display: flex;
	justify-content: center;
	margin-bottom: 10.2rem;
}
ul.comBtn02 li {
	margin: 0 2.5rem;
}
ul.comBtn02 .right {
	order: 3;
}
.comBtn02 a {
	padding: 0.5rem 5.4rem 0.5rem 2rem;
	width: 37.8rem;
	height: 6.5rem;
	color: #A85733;
	font-size: 2rem;
	font-weight: 500;
	font-family: "Shippori Mincho B1", serif;
	border-radius: 0.6rem;
	background: #fff;
	border: 1px solid #a85733;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}
.comBtn02 a:after {
	margin-top: -1.3rem;
    width: 2.4rem;
    height: 2.4rem;
    position: absolute;
    top: 50%;
    right: 1.8rem;
	background: url("../image/icon03.png") no-repeat left top / 100% 100%;
	content: "";
	transition-delay: .2s;
}
.comBtn02 a::before {
	background: #a85733;
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 100%;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
.comBtn02 .inner {
	display: block;
	position: relative;
	z-index: 5;
	font-weight: 300;
}
@media all and (min-width: 897px) {
	.comBtn02 a:hover {
		color: #fff;
	}
	.comBtn02 a:hover:before {
		transform: scale(1, 1);
	}
	.comBtn02 a:hover:after {
		background-image: url("../image/icon03_over.png");
	}
}
@media all and (max-width: 896px) {
	ul.comBtn02 {
		display: block;
	}
	ul.comBtn02 li {
		margin: 0 0 3rem;
	}
	ul.comBtn02 li:last-child {
		margin-bottom: 0;
	}
	.comBtn02 a {
		margin: 0 auto;
		padding: 0.5rem 5.4rem 0.5rem 3.5rem;
		width: 100%;
		max-width: 34rem;
		height: 5.8rem;
		font-size: 1.8rem;
		border-radius: 1rem;
		justify-content: flex-start;
	}
	.comBtn02 a:after {
		margin-top: -1.3rem;
		width: 2.3rem;
		height: 2.3rem;
		right: 1.8rem;
	}
}

/*------------------------------------------------------------
	price table
------------------------------------------------------------*/


table.price-table {
    width: 100%;
    margin: 0 auto 30px auto;
    border-collapse: collapse;
    border: solid 2px #000;
}
table.price-table th {
    background: #f6eae5;
    padding: 10px 2px;
    color: #000;
}
table.price-table td, table.price-table th {
    width: 90px;
    border: solid 1px #000;
    text-align: center;
    font-size: 1.6rem;
}
table.price-table td span, table.price-table th span{
		    font-size: 1.1rem;

}
table.price-table td {
    vertical-align: middle;
    text-align: center;
}
@media all and (max-width: 896px) {
	table.price-table td, table.price-table th {
		    font-size: 1.4rem;

	}
}

.comImgBox3 .phoBox {
    width: 20rem;
    order: 1;
    text-align: center;
}

.comImgBox3 .txtBox {
    margin-top: -0.1rem;
    width: 80rem;
}

@media (max-width: 896px) {

	.comImgBox3 .phoBox {
	    margin: 3rem auto;
	}

    .comImgBox3 .phoBox img {
        width: 60%;
        text-align: center;
    }

	.comImgBox3 .txtBox {
	    width: 24rem;
	}
    .contentDog{
    	margin: 4.9rem 3rem 7.5rem;
    }
}
