@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

body{
    width: 100vw;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    background-image: url(img/backimg.jpg);
    background-repeat: repeat;
    background-size: 50%;
}
main{
	padding-top:220px;
}
main#main_content {
    padding-top: 0;
    margin-bottom: 6em;
	width:90%;
}
a{
    font-style:none;
    color: inherit;
}
p {
    font-size: large;
    line-height: 2em;
}

h2{
    font-size: 160%;
    font-weight: 500;
}
h3{
    font-weight: 500;
}
address {
    font-style: normal;
}
.wrapper {
    max-width: 1000px;
    width: calc(100% - 20px);
    margin: 0 auto;
}
section{
    margin-bottom: 5em;
}
section.fb-copy {
	margin:1em 0 3em;
}
section.fv {
	margin-bottom:2em;
}
.flex{
    display: flex;
}
.gap-1{
	gap:1em;
}
.t-left{
	text-align:left;
}
.t-center{
	text-align:center;
}
.anchor {
  position: relative;
  top: -200px;
  padding-top: 200px;
}
.p-articleMetas.-top .p-articleMetas__termList {
    font-size: 16px;
}
@media (min-width: 768px) {
.sp-only{
	display:none;
}
}
@media (max-width: 767px) {
.pc-tab{
	display:none;
	}
	}
/*-----ヘッダー-----*/
#header{
    text-align: center;
    border-top: 10px solid #ee70aa;
    position: fixed;
	background-image: url(img/backimg.jpg);
    background-repeat: repeat;
    background-size: 50%;
	width: 100vw;
	z-index: 999;
}
#header img{
    max-height: 70px;
    margin: 0.5em auto;
    padding: 0 10px;
    transform: translateX(-10px);
}
#header p{
    font-size: 90%;
}
nav.header-nav {
    margin: 0.5em 0 0;
}
nav.header-nav ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5em 2em;
    border-bottom: 1px solid #ee70aa;
    padding-bottom: 10px;
}
nav.header-nav ul li {
    font-family: "Noto Serif JP", serif;
    letter-spacing: 0.1em;
}
nav.header-nav ul li a{
    color: #ee70aa;
}
nav.header-nav ul li a:hover{
    color: #a15ca1;
}
/* ハンバーガーボタン */
.hamburger {
  display: none;       /* PCでは非表示 */
  flex-direction: column;
  justify-content: space-between;
  width: 25px;
  height: 20px;
  cursor: pointer;
}

.hamburger span {
  display: block;
  height: 2px;
  background: #ee70aa;
  border-radius: 2px;
}
/*-----SVGタイトル-----*/

.cls-1 {
    fill: #995999;
}
.cls-2 {
    fill: #ee70aa;
}
h2.ttl img {
    height: 45px;
    display: block;
    margin: 1em auto;
}

/*-----トップページ-----*/
.fv {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.video-wrap {
  position: relative;
  width: 96%;
  margin:0 auto;
  height: 75vh;
}

.video-wrap video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 30%;
}

.v-caption {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #1e4f84;
  text-align: left;
  font-size: 1rem;
  line-height: 1.8;
  max-width: 80%;
  z-index: 2;
  padding: 1em;
  background: #ffffffaa;  
}
span.t-right {
    display: block;
	text-align:end;
}

h3.fb-copy {
    color: #995999;
    font-size: 140%;
    opacity: 0.8;
    letter-spacing: 0.2em;
    width: fit-content;
    margin: 0 auto;
    line-height: 1em;
    font-weight: 600;
}
span.emphasis {
    font-size: 300%;
    transform: translateY(0.4em);
    display: inline-block;
    opacity: 0.6;
}
.counselor-contents {
    display: flex;
    flex-wrap: wrap;
}
.flex.fushimi {
    gap: 2em;
    align-items: center;
}
.letter {
    background: #ffffffdd;
    margin: -4em 0 5%;
    padding: 8%;
    box-shadow: 1px 4px 8px #33333333;
    font-style: italic;
    width: 80%;
    position: relative;
    z-index: 100;
    left: 20%;
}
.sakura {
	font-family:serif!important;
}
img.reiko-fushimi{
    width:60%;
}
.letter h4 {
    font-size: 1.2em;
}
.letter p {
    margin-bottom: 1em;
	font-size:0.9em;
}
small {
    font-size: 80%;
}
h2.ttl.voice {
    clear: both;
}
.adv h2 {
    font-size: 140%;
    color: #995999;
    font-weight: 600;
    letter-spacing: 0.1em;
    display: flex;
    align-items: baseline;
}
.adv h2 span {
    font-size: 150%;
    opacity: 0.8;
    font-style: italic;
    margin-right: 0.3em;
}
section.advantages h2.adv-hd {
    font-size: 160%;
    color: #995999;
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 1.3em;
    text-align: center;
    width: fit-content;
    margin: 2em auto;
}
section.advantages h2.adv-hd span {
    font-size: 70%;
    display: block;
}
.adv {
    width: 80%;
    margin: 0 auto 2em;
}
/*成婚者様の声*/
.voice-list {
  display: flex; 
  overflow-x: auto;
  gap: 10px;
  padding: 16px;
  scroll-snap-type: x mandatory;
}

.voice-list li {
    flex: 0 0 auto;
    width: 320px;
    scroll-snap-align: start;
    list-style: none;
    background: #ffffffcc;
    padding: 5px 5px 10px;
}
.voice-list li a {
  display: block;
  text-decoration: none;
  color: inherit;
}

.voice-list li img {
    width: 100%;
    height: 330px;
    display: block;
    object-fit: cover;
    object-position: top;
}

.voice-list li h2{
	text-align: center;
	font-size:1.5em;
	line-height: 0.8em;
	font-style:italic;
}


.voice-list li h3 {
	margin: 2px 0 0 0;
	text-align: center;
	font-size:1.2em;
}
ul.voice-list li a .flex {
    align-items: center;
    gap: 0.5em;
    width: fit-content;
    margin: 0.5em auto;
	color:#995999;
}

/* よくある質問 */
.post-9429 header {
	margin-bottom: 0;
}
.QandA *, .QandA *:after, .QandA *:before {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.QandA .qa_tab {
	position: relative;
	overflow: hidden;
	width: 94%;
	margin: 0 auto 10px;
	color: #1b2538;
}
.QandA .qa_tab input {
	position: absolute;
	opacity: 0;
}
.QandA label span {
	background: #EE70AA;
	color: #fff;
	font-size: 1.1em;
	padding: 2px 8px 6px;
	margin: 1em 0.4em 10px 0;
	border-radius: 4px;
	display: inline-block;
	height: 2em;
}
/* 質問 */
.QandA .qa_tab label {
	font-weight: 100;
	line-height: 1.6;
	position: relative;
	display: block;
	margin: 0 0 0 0;
	padding: 1em 2em 0.2em 0em;
	cursor: pointer;
	border-bottom: 1px solid #EE70AA;
}
.QandA .qa_tab label:hover {
	color: #A15CA1;
}
/* 答え */
.QandA .qa_tab .tab_content {
	overflow: hidden;
	max-height: 0;
	-webkit-transition: max-height 0.5s ease;
	transition: max-height 0.5s ease;
	color: #ffffff;
	font-weight: 100;
	text-shadow: 0px 0px 1px #aaa;
	background: rgba(161,92,161, 0.62);
		border-radius: 0 0 4px 4px;
}
.QandA .qa_tab .tab_content p {
	margin: 1em;
}
.tab_content .wp-oembed-blog-card {
	width: 96%;
	margin: auto;
}
.tab_content p a {
	color: #fff;
}
/* 質問を開いた時の仕様 */
/* --アイコン */
.QandA .qa_tab input:checked ~ label {
	color: #A15CA1;
}
/* --答えの高さ */
.QandA .qa_tab input:checked ~ .tab_content {
	max-height: 40em;
}
/* 質問をクリックした時のアイコンの動き */
.QandA .qa_tab label::after {
	line-height: 1.6;
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	width: 3em;
	margin-top: -12.5px;
	-webkit-transition: all 0.5s ease;
	        transition: all 0.5s ease;
	text-align: center;
}
.QandA .qa_tab input[type=checkbox] + label::after {
	content: '';
}
.QandA .qa_tab input[type=checkbox]:checked + label::after {
	-webkit-transform: rotateX(180deg);
	transform: rotateX(180deg);
}

/*コンタクトフォーム*/

form.wpcf7-form.init {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}
input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required,
select.wpcf7-form-control.wpcf7-select.wpcf7-validates-as-required.your-select-gender,
textarea.wpcf7-form-control.wpcf7-textarea,
input.wpcf7-form-control.wpcf7-submit.has-spinner{
    width: 100%;
    border: 0.5px solid #ee70aa;
}
div#wpcf7-f33-o1 label {
    color: #ee70aa;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner {
    color: #ee70aa;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner:hover {
    color: #FFFFFF;
    background-color: #ee70aa;
}
form.wpcf7-form.init p {
    margin-bottom: 0.5em;
}
section.contact {
    background-color: rgba(253, 253, 253, 0.5);
    padding: 5em;
}
/*-----固定ページ-----*/
h2.contents-ttl,
.c-pageTitle{
    color:#a15ca1;
    width: fit-content;
    margin: 0 auto;
    margin-bottom: 2em;
}

h3.contents-ttl-sub {
    font-size: 20px;
    letter-spacing: 0.1em;
    text-align: center;
    color: #a15ca1;
}
h2.section-ttl{
    color:#ee70aa;
    width: fit-content;
    margin: 0 auto;
    margin-bottom: 1em;
}
table,th,td{
    border: 1px solid #a15ca1;
    color: #a15ca1;
    font-weight: 100;
    line-height: 1.5em;
    text-align: center;
    padding: 10px;
    letter-spacing: 0.2em;
}
table{
    width:100%;
    margin-bottom: 1em;
}
tr.table-head th{
    color:#FFF;
    background-color: #a15ca1;
}
table>tbody>tr>td>ul>li{
    text-align: left;
    list-style: inside;
}
p.memo{
    font-size: 85%;
    text-align: center;
}
.steps h3 span {
    font-size: 120%;
    opacity: 0.8;
    font-style: italic;
    margin-right: 0.2em;
}
.steps h3,
.about-her h3{
    color: #a15ca1;
    font-size: 120%;
    border-bottom: 1px solid #a15ca1;
    padding-bottom: 0.2em;
    margin-bottom: 0.2em;
    letter-spacing: 0.2em;
}
.steps p{
    padding: 1em 2em;
}
.steps{
    margin-bottom: 1em;
}
span.pt{
    display: block;
    font-weight: 600;
    color: #ee70aa;
}
section.btn {
    width: 100%;
    background-color: #a15ca1;
    color: #FFF;
    padding: 2em;
    font-size: 120%;
    text-align:center;
    margin-top: -2em;
}
section.btn:hover {
    background-color: #ee70aa;
}

table.prepare td{
    text-align: left;
}
td.ctr{
    text-align: center!important;
}
h3.prepare-head {
    margin-bottom: 0.5em;
    font-size: 130%;
    color: #a15ca1;
}
.intro,
.prepare{
    margin-bottom: 2em;
}
.flex.overlap {
  position: relative;
  display: inline-block;
	margin-right:1em;
	
}

.flex.overlap svg {
  width: 100px; /* 大きさはお好みで */
  height: auto;
  display: block;
}
.flex.y-center {
    align-items: center;
	margin-bottom:1em;
}
/*----- IBJ・TMSにてついて -----*/
.about-her{
	margin-bottom:4em;
}
.about-her p {
    padding: 1em;
}
section.btn.her {
    margin: 0 auto;
    padding: 0.3em 1em;
    width: fit-content;
}
.about-her img {
    text-align: end;
    height: 50px;
    float: right;
    margin-top: -1.5em;
}
.camellia-point p {
    color: #ee70aa;
    padding: 1em;
    width: fit-content;
    margin: 0 auto;
    background: #ffffffaa;
}
/*----- 入会について -----*/
.flex.overlap h3 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff; 
  font-size: 1rem;
  text-align: center;
  pointer-events: none; 
}
.nec-intoro {
    width: fit-content;
    width: 0 auto;
    margin: 0 auto;
}
/*----- お問合せ -----*/
.info-form{
margin-top:2em;
}
p.memo.cta-page {
    text-align: left;
    width: fit-content;
    margin: 0 auto;
}
/*----- アクセス -----*/
.address {
    width: 60%;
}
.floor{
	width:40%
}
img.aligncenter {
    margin: -5em 1em 0;
}
/* 投稿ページ共通 */
.c-entry-summary__figure .c-entry-summary__term {
	display: none;
}
.c-meta__item--author {
	display: none;
}
.snow-monkey-posts__more {
	border-radius: 0;
}
.snow-monkey-posts__more:hover {
	background: #EE70AA;
}
.single .c-eyecatch {
	display: none;
}
a.blog-image:hover{
	opacity:0.6;
}
a.blog-image img {
    object-fit: cover;
    aspect-ratio: 4 / 3;
    width: 160px;
}
.blog-meta {
    margin-left: 2em;
}
p.post-date {
    margin-bottom: 0.5em;
}
p.post-date {
    margin-bottom: 0;
    letter-spacing: 0.2em;
    font-style: initial;
}
h2.post__ttl {
    letter-spacing: 0.1em;
}
ul.custom-post-list li {
    margin-bottom: 20px;
    background: #FFFFFFaa;
	align-items:center
}
ul.custom-post-list {
    font-size: x-small;
}
.blog-mata p {
    font-size: 16px;
}
.more-btn {
    text-align: center;
}
a.btn {
    display: block;
    width: 200px;
    margin: 0 auto;
    background-color: #ee70aa;
    padding: 1em;
    color: #FFF;
}
a.btn:hover {
    background-color: #a15ca1;
}
/* 成婚者さまの声(.page-id-3103) */
.page-id-3103 .p-entry-content>:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6)+:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6)  {
	margin-top: 0;
}
.flexcontainer {
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
	-webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: stretch;
}
.flexinner {
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
	align-self: stretch;
	flex-basis: 32%;
	margin-bottom: 2%;
}
.flexinner a {
	width: 100%;
	display: block;
	padding: 10px;
	text-decoration: none;
}
.flexinner .voice-title {
	display: block;
	font-size: 1.1em;
	font-weight: 600;
	padding: 0.1em 0.4em;
	color: #333;
	background-color: rgba(238,112,170,0.1);
	background-size: 28px;
}
.flexinner .voice-seibetsu {
	color: #fff;
	padding: 2px 4px 4px;
	font-weight: 600;
	font-size: 0.8em;
    letter-spacing: 0.1em;
}
.flexinner .voice-seibetsu.men {
	background: #a15ca1;
}
.flexinner .voice-seibetsu.women {
	background: #EE70AA;
}
.flexinner .voice-date {
	color: #333;
	background: #ffffff44;
	font-size: 1em;
	font-weight: 600;
	padding: 0.1em 0.4em 0.3em;
	float: right;
}
.flexinner a img {
	background: #fff;
	padding:2%;
	height: 400px;
	width: 100%;
	object-fit:cover;
}
.parent-pageid-3103 article.page img {
	max-width: 400px;
}

/* 成婚者さま 子ページ */
.parent-pageid-3103 .c-entry__content h2 {
	margin-top: 0;
}
.parent-pageid-3103 .c-entry__content a img {
	text-align: center;
	display: block;
}
.parent-pageid-3103 .c-entry__content p {
	margin: 0px 5% 6%;
}

/*-----スライダー-----*/
@keyframes infinity-scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
.c-loop-slider {
  overflow: hidden;
}
.c-loop-slider__wrapper {
  display: flex;
  width: max-content; 
}
.c-loop-slider__items {
  display: flex;
  animation: infinity-scroll 100s linear infinite both;
}
.c-loop-slider__items img {
  margin-right: 20px;
  width: auto;
  height: 200px;
  opacity: 0.9;
}
  @media screen and (min-width: 900px) {
    height: min(340 / 900 * 100vw, 300px);
  }
  @media screen and (min-width: 1200px) {
    height: max(340 / 1200 * 100vw, 300px);
  }
/*-----フッター-----*/

#footer{
    background-color: #a15ca1;
}
.fotter-container {
    display: flex;
    align-items: end;
    justify-content: space-between;
}
.footer-bunner{
    background-color: #fff;
    width: 70%;
    margin: 2em;
}
.footer-bunner>.inner {
    padding: 1em 2em;
    border: 4px solid #ee70aa;
    margin: 1em;
}
.footer-bunner h3 {
    text-align: center;
    padding: 0.5em 2em;
    background-color: #ee70aa;
    width: fit-content;
    color: #FFF;
    font-weight: 100;
    border-radius: 100px;
    margin: 0 auto;
    display: block;
}

.footer-cta {
    display: flex;
    align-items: center;
    gap: 1em;
}
.add-container img {
    width: 10%;
}

.telephone {
    display: flex;
    align-items: center;
}
address.tel {
    font-size: 250%;
    margin-left: 10px;
    transform: translateY(5px);
}
address.add-no, address.add {
    font-size: 110%;
    letter-spacing: 0.1em;
}
nav.footer-nav {
    margin: 2em;
    text-align: right;
    color: #FFF;
}
nav.footer-nav ul {
    letter-spacing: 0.15em;
    line-height: 2em;
}
.c-container {
    color: #fff;
    text-decoration: none;
	font-size:12px;
	padding:0 0.5em 1em;
	text-align:center;
}
/* 狭いPCとタブレット */
@media (min-width: 768px) and (max-width: 1250px) {
main {
    padding-top: 250px;
}
		nav.header-nav ul{
		padding-left:20%;
		padding-right:20%;
	}
nav.header-nav ul li {
    font-size: 0.8em;
	}
}
/* タブレット（768px〜1024px） */
@media (min-width: 768px) and (max-width: 1024px) {
/*-----トップページ-----*/
h2.ttl svg {
    height: 35px;
    display: block;
    margin: 1em auto;
}

/*-----お客様の声-----*/	
	.c-site-branding .custom-logo, .wpaw-site-branding__logo .custom-logo {
	width: 300px;
}
.flexinner {
	flex-basis: 50%;
}	#inc2734_wp_awesome_widgets_slider-9 {
		margin-top: 1em;
	}
	.img_divide {
	flex-wrap: wrap;
	}
.flexinner a img {
    height: 450px;
}
/*-----フッター-----*/
address.tel {
	font-size: 200%;align-content
	}
nav.footer-nav ul li {
    font-size: 0.75em;
}
nav.footer-nav{
	margin: 2em 2em 2em 0;
	}
nav.footer-nav ul {
    line-height: 1.6em;
}
}
/*tab終了*/


/* スマホ（〜767px） */
@media (max-width: 767px) {
main {
    padding-top: 120px;
}
section {
    margin-bottom: 3em;
}
.sp-block{
	display:block;	
	}
a.blog-image img {
    object-fit: cover;
    aspect-ratio: 3 / 2;
    width: 100%;
}
/*-----ヘッダー-----*/	
/* ハンバーガーボタン */
  .header-nav {
    display: none;
    position: absolute;
    width: 100%; 
    right: 0;
	top: 0;
    background: #fff;
	padding-top: 3em;
  }

  .header-nav ul {
    flex-direction: column;
    margin: 0;
    padding: 0;
  }

  .header-nav li {
    list-style: none;
    border-bottom: 1px solid #ddd;
  }

  .header-nav li a {
    display: block;
    padding: 10px;
  }

.hamburger {
	display: flex;
	position: absolute;
        right: 0;
        margin-right: 0.5em;
        margin-top: 1em;
	z-index: 999;
    }
  /* メニューが開いたとき */
  .header-nav.active {
    display: block;
  }
nav.header-nav {
    margin:0;
}
#header p {
    font-size: 90%;
    display: none;
}
#header img {
    max-height: 55px;
	}

/*-----トップページ-----*/
.video-wrap {
	height:55vh;
	}
.v-caption {
    transform: translate(-50%, -20%);
	font-size: 0.8rem;
	font-weight:600;
	}
section.fb-copy {
    margin-left: 0.5em;
    margin-right: 0.5em;
    text-align: justify;
}
h3.fb-copy {
    font-size: 120%;
	line-height: 1.5em;
	}
span.emphasis {
    font-size: 200%;
	}
h2.ttl svg {
    height: 30px;
    display: block;
    margin: 0.5em auto;
}
.flex.fushimi {
    display: grid;
	gap: 1em;
}
h2.ttl.counselor {
    order: 0;
}
img.reiko-fushimi {
    order: 1;
	width: 100%;
}
.letter {
    width: 100%;
    position: unset;
	margin-top:0;
}
.adv h2 {
	margin-bottom: 0.5em;
	}
/*コンタクトフォーム*/
section.contact {
    padding: 2em 1em;
}
/*-----料金について-----*/	
 section.price table,section.price thead,section.price tbody,section.price th,section.price td,section.price tr {
    display: block;
  }
	section.price table{
		border:none;
		margin-top: -2em;
	}
section.price tr.table-head {
    display: none!important;
}
section.price th,section.price td {
    width: 100%;
    margin: 0 auto;
	border-top: none;
	border-bottom: 1px solid #a15ca1;
}
	section.price th{
		background-color:#a15ca1;
		color:#FFF;
	}
	section.price td ul li{
		font-size:0.8em;
	}
p.memo {
    text-align: left;
	padding-left:10%;
	padding-right:10%;
}
	section.btn {
		font-size:100%;
	}
/*-----入会について-----*/	
.flex.y-center {
    display: contents;
	}
    .flex.overlap {
        display: flex;
        align-items: center;
        margin: 0.5em 0;
        width: fit-content;
    }
.flex.overlap h3 {
    position: unset;
    transform: unset;
    color: #a15ca1;
    font-size: 1.2rem;
    text-align: center;
}
.flex.overlap svg {
    width: 30px;
	margin-right:0.3em;
	}
/*-----お客様の声-----*/	
	.c-site-branding .custom-logo, .wpaw-site-branding__logo .custom-logo {
	width: 220px;
}
	.p-infobar__content {
	font-size: 12px;
	}
	.p-entry-content>h2 {
		font-size: 1.2em;
	}
	.p-entry-content>h3 {
		font-size: 1em;
	}
	.flexinner {
	flex-basis: 100%;
}
	.yokonarabi {
		display: block;
		width: 100%;
		max-width: 340px;
		margin: auto;
		text-align: center;
}
	.yokonarabi.two, .yokonarabi.three, .yokonarabi.four {
		width: 100%;
	}
.flexinner a img {
	height:550px;
}
/*-----フッター-----*/
#footer {
    padding-top: 0.5em;
}
.fotter-container {
    display: grid;
	margin-bottom: 2em;
}
.footer-bunner {
	width:100%;
	margin:0;
	padding: 0.5em;
	order:2;
}
.footer-cta {
    display: block;
}
.footer-bunner h3{
    font-size: 1.2em;
}
.footer-bunner>.inner {
    padding: 1em;
}
nav.footer-nav {
	font-size: 1.2em;
	text-align:center;	
	order:1;
}
.telephone {
	margin-bottom:1em;
	justify-content:center;
	}
address.add-no, address.add {
    font-size: 130%;
	text-align:center;
}
.add-container img {
    width: 13%;
}
/*----- アクセス -----*/
.address {
    width: 100%;
}
.floor{
	width:80%;
	margin:0 auto;
}
img.aligncenter {
    margin: 0;
}
}




.hamburger.active span:nth-child(1) {
  transform: rotate(45deg) translate(5px, 5px);
}
.hamburger.active span:nth-child(2) {
  opacity: 0;
}
.hamburger.active span:nth-child(3) {
  transform: rotate(-45deg) translate(5px, -5px);
}
/* 成婚者さまの声 - ページ */
/* 成婚者さまの声(.page-id-3103) */
.page-id-3103 .p-entry-content>:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6)+:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6)  {
	margin-top: 0;
}
.flexcontainer {
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
	-webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: stretch;
}
.flexinner {
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
	align-self: stretch;
	flex-basis: 32%;
	margin-bottom: 2%;
}
.flexinner a {
	width: 100%;
	display: block;
	padding: 10px;
	text-decoration: none;
}
.flexinner .voice-title {
	display: block;
	font-size: 1.1em;
	font-weight: bold;
	padding: 0.1em 0.4em;
	color: #333;
	background-color: rgba(238,112,170,0.1);
	background-size: 28px;
}
.flexinner .voice-seibetsu {
	color: #fff;
	padding: 1px 2px 4px;
	font-weight: bold;
	font-size: 0.8em;
}
.flexinner .voice-seibetsu.men {
	background: #a15ca1;
}
.flexinner .voice-seibetsu.women {
	background: #EE70AA;
}
.flexinner .voice-date {
	color: #333;
	background: #ffffff44;
	font-size: 1em;
	font-weight: bold;
	padding: 0.1em 0.4em 0.3em;
	float: right;
}
.flexinner a img {
	background: #fff;
	padding:2%;
}
.parent-pageid-3103 article.page img {
	max-width: 400px;
}



/* 成婚者さま 子ページ */
.parent-pageid-3103 .c-entry__content h2 {
	margin-top: 0;
}
.parent-pageid-3103 .c-entry__content a img {
	text-align: center;
	display: block;
}
.parent-pageid-3103 .c-entry__content p {
	margin: 0px 5% 6%;
}
.kugiri-line {
	width: 60%;
	height: auto;
	display: inline-block;
	margin: 4% 20% !important;
	border-top: 1px solid #aaaaaa22;
	overflow: auto;
	clear: both;
}
.c-entry__content h2:before {
	content: ' ';
	background: url(/wp-content/uploads/2018/05/logo150.png) no-repeat;
	display: inline-block;
	background-size: contain;
	width: 66px;
	height: 66px;
	float: right;
	margin: -40px -32px 0 auto;
}
.p-entry-content>h2 {
    width: 100%;
    background: rgba(238, 112, 170, 0.1);
    border: none;
    color: #e8436b;
    text-shadow: 1px 1px 4px #fff;
    font-size: 1.6em;
    line-height: 1.5em;
    font-weight: 900;
    position: relative;
    display: inline-block;
    padding: 0.6em;
    text-align: center;
}
.c-pageTitle__inner {
    font-weight: 100;
    letter-spacing: 0.1em;
}
.post_content dt, .post_content h2, .post_content h3, .post_content h4 {
    font-weight: 100;
	text-align:center;
}
p img.aligncenter {
    margin: 0;
}

.p-entry-content>h2 {
    width: 100%;
    background: rgba(238, 112, 170, 0.1);
    border: none;
    color: #e8436b;
    text-shadow: 1px 1px 4px #fff;
    font-size: 1.6em;
    line-height: 1.5em;
    font-weight: 900;
    position: relative;
    display: inline-block;
    padding: 0.6em;
    text-align: center;
}
.post_content h3{
	color:#e8436b;
}
.post_content h2{
	padding:1em 0;
	color:#EE70AA;
	border-top:1px solid #EE70AA;
	border-bottom:1px solid #EE70AA;
}