@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@200;400;600&family=Noto+Serif+JP:wght@200;400;500;700&display=swap');


input[type="search"], input[type="button"], input[type="text"], input[type="submit"], [type="reset"],input[type="tel"],input[type="email"],button {
	-webkit-appearance: none;
	border-radius: 0;
	border: none;
	padding: 0;
	cursor: pointer;
}

select {
	color: #111;
}

label {
    cursor: pointer;
}

option {
    color: #111;
}

body {
	margin: 0;
	color: #111;
	font-size: 16px;
	font-family: '游ゴシック',YuGothic,'ヒラギノ角ゴ ProN W3',"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
}

a {
	text-decoration: none;
	color: #2697f5;
	font-size: 90%;
}

div {
	margin: 0;
	padding: 0;
	display: inherit;
}

ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

p {
	margin: 0;
	padding: 0;
	line-height: 1.8;
}

.sp {
    display: none;
}

.tel {
	pointer-events: none;
}

.colorRed {
    color: #ba0e0e;
}

#wrapper {
	min-height:calc(100vh - 165px);
}

header {
	background: #FFF;
	box-shadow: 0 0 5px #777777;
	padding: 0.6rem 0 ;
	position: fixed;
	top:0;
	width: 100%;
	height: 70px;
    box-sizing: border-box;
	z-index: 2;
}

header .flexBox {
	align-items: center;
}

header .flexBox #logo {
    width: 50%;
}

header .flexBox #logo a img {
    width: auto;
    height: 48px;
}


.inner {
	max-width: 1120px;
	width: 94%;
	margin: 0 auto;
}

.flexBox {
	display: flex;
	justify-content: space-between;
}

.cf {
	overflow: hidden;
	zoom:1;
}

.center {
	text-align: center;
}

.mt {
	margin-top: 0.2rem;
}

.mb {
	margin-bottom: 0.8rem;
}

.mb2 {
	margin-bottom: 2rem;
}

.mtb2 {
	margin: 2rem 0 3rem;
}

.w50 {
	width: 50%;
	margin: 0 auto;
}

#telephone {
	margin: 0;
}

#telephone p {
	display: inline-block;
	font-size: 70%;
	margin: 0 0.5rem 0;
}

#telephone p img {
	width: 100%;
}

.tel {
	pointer-events: none;
	font-size: 44px;
    line-height: 1;
    color: #54443A;
    letter-spacing: -2px;
	font-family: "Oswald", sans-serif;
	position: relative;
	
}
.tel_text {
	padding-left: 65px;
}

.tel_text:before {
    content: "";
    position: absolute;
    top: 54%;
    left: 0;
    transform: translateY(-50%);
    width: 60px;
    height: 48px;
    background: url(../image/common/free.svg) no-repeat 50% 50%;
    background-size: 60px;
}

#sharehouse .tel_text:before {
    content: "";
    position: absolute;
    top: 54%;
    left: 0;
    transform: translateY(-50%);
    width: 46px;
    height: 48px;
    background: url("../image/common/tel.svg") no-repeat 50% 50%;
    background-size: 46px;
}


.telLink {
	pointer-events: none;
	color: #333;
}

.thanks .tel_text {
    font-size: 90px;
    padding-left: 110px;
	letter-spacing: 2px;
}

.thanks .tel_text:before {
    width: 100px;
    height: 100px;
    background-size: 92px;
}

#telephone p:last-child {
	margin: 3px 0.5rem 0;
}

h1 {
	margin-top: 100px;
	text-align: center;
	font-size: 160%;
}

#sharehouse #contact h1 {
	margin-top: 60px;
}

h2 {
	font-size: 130%;
	background: #717C68;
	color: #FFF;
	text-align: center;
	padding: 0.6rem 0;
	margin: 1rem auto 2rem;
}

h3#bukken {
	font-size: 170%;
	width: 50%;
	margin: 0 auto 0.8rem;
	font-weight: bold;
	color: #5b4a3f;
}

main {
    margin-bottom: 20px;
}

.text {
	font-size: 95%;
}

.textSmall {
	font-size: 85%;
}

table.formTable {
	width: 90%;
	border-collapse:collapse;
	margin: 0 auto 2%;
}

table.formTable td,table.formTable th{
	border-top:1px dotted #ccc;
	padding: 1.2rem 0;
}

table.formTable th {
	width: 30%;
	text-align: left;
	padding: 1.2rem 0 1.2rem 1.2rem;
}

table.formTable span {
	color: #e50013;
}

table.formTable td {
	width: 70%;
}

input[type="text"],input[type="tel"],input[type="email"] {
	font-size: 16px;
	padding: 0.4rem;
}

select {
    font-size: 14px;
	padding: 0.6rem;
}

.selectMb select {
	margin-bottom: 0.6rem;
}


input::placeholder {
  color: #aaa;
}

/* IE */
input:-ms-input-placeholder {
  color: #aaa;
}

/* Edge */
input::-ms-input-placeholder {
  color: #aaa;
}

p.title {
	font-weight: bold;
}

table.formTable td .flexBox {
	justify-content: flex-start;
	flex-wrap: wrap;
}

table.formTable td .flexBox li {
	width: 32%;
	margin-bottom: 0.6rem;
}

table.formTable td .flexBox li.after {
    width: 32%;
}

table.formTable td .flexBox li.w100 {
	width: 100%;
}

input[type="radio"],input[type="checkbox"]{
 vertical-align:middle;
	scale: 1.2;
    margin-top: -2px;
}

input[type="text"],textarea,input[type="email"],input[type="tel"] {
	padding: 0.6rem;
	border: 0.5px solid #ddd;
	width: 60%;
}

input[type="tel"] {
    width: 23.5%;
	padding: 1%;
	margin: 0.4rem 0;
}

input[type="text"].calendar {
	width: 15%;
}

input[type="text"].zip {
	width: 20%;
}

input[type="text"].sizeS {
    width: 4rem;
}

input[type="text"].sizeM {
    width: 8rem;
}

input[type="submit"], [type="reset"],input[type="button"],button {
	padding: 10px 50px;
	background-color: #be000f;
	margin: 4% 2%;
	font-size: 14px;
	color: #fff;
	border: 1px solid #ececec;
}

button.sharehouseBtn {
	margin: 4% 2% 5px;
}

button {
    padding: 5px 18px 7px;
    font-weight: normal;
    line-height: 1.6;
    border-radius: 5px;
    border: none;
	font-size: 14px;
}

button span {
    font-size: 14px;
}

#btnList {
	text-align: center;
}


footer {
	box-shadow: 0 0 5px #777777;
	background: #fff;
}

footer #logo {
	margin: 10px 0 8px;
}

footer .flexBox a {
    font-size: 14px;
}

footer #logo img {
	width: auto;
    height: auto;
}

.infoBox {
    border: 2px solid #aa0b18;
    padding: 20px;
    width: 60%;
    margin: 0 auto;
}

.infoBox p {
    font-size: 18px;
	font-weight: bold;
}

.infoBox a {
    font-size: 18px;
	color: #aa0b18;
	text-decoration: underline;
}

 /*＝＝＝＝＝＝＝＝＝＝シェアハウス＝＝＝＝＝＝＝＝＝＝*/
/*#sharehouse {
	background: url(../image/common/bg.jpg);
} */
 
/*#sharehouse .inner {
	max-width: 1020px;
	padding: 2rem 60px 2rem;
	margin: 0 auto;
	background: #fff;
}

#sharehouse h1 {
    margin: 2rem auto;
}*/

#sharehouse h2 {
    background: #000;
}
 
#sharehouse #nitiji{
	display: none;
}  
#sharehouse #nitiji.open{
	display: block!important;
	margin-bottom: 2rem;
}
#sharehouse #nitiji2{
	display: none;
}  
#sharehouse #nitiji2.open{
	display: block!important;
	margin-bottom: 2rem;
}
#sharehouse #nitiji3{
	display: none;
}  
#sharehouse #nitiji3.open{
	display: block!important;    
}

.box {
	box-shadow: 0 0 0 2px #cc0011;
	padding: 1.6rem 0;
	margin: 0 auto;
    width: 70%;
	font-weight: bold;
}

.flexBox.radio02 {
	justify-content: flex-start;
}

table.formTable td .flexBox.radio02 li {
	width: 20%;
}

.annotation {
	text-align: center;
}

.lineBtn {
    margin-top: 150px;
    text-align: center;
}

.lineBtn a {
    display: inline-block;
    color: #fff;
    background: #06C755;
    padding: 0 20px;
    line-height: 62px;
    font-size: 18px;
    font-weight: bold;
	border-radius: 5px;
}

.lineBtn a:before {
    content: "";
    background: url(../image/common/line_icon.svg) no-repeat 0 0;
    background-size: 40px;
    height: 50px;
    width: 50px;
    display: inline-flex;
    align-items: center;
	margin-right: 8px;
}

/*＝＝＝＝メインビジュアル部分＝＝＝＝*/

#mainVisuArea {
	padding-top: 70px;
	text-align: center;
}


#mainVisual p,#mainVisual h2,#mainVisuArea h3 {
	font-family: 'Noto Serif JP', serif;
	color:#fff;
	text-align: center;
}

#mainVisuArea li p,#mainVisuArea p.bgGray {
	font-family: 'Noto Sans JP', sans-serif;
	text-align: center;
}

#mainVisual.kansai {
	background: url("../image/common/main_visu_kansai.jpg") no-repeat 50% 50%;
	background-size: cover;
	text-align: center;
	padding: 190px 0 140px;
	margin-bottom: 100px;
}

#mainVisual.kanto {
	background: url("../image/common/main_visu_kanto.jpg") no-repeat 50% 50%;
	background-size: cover;
	text-align: center;
	padding: 190px 0 140px;
	margin-bottom: 100px;
}

#mainVisual .searchBox {
	position: relative;
	border:1px solid #fff;
	border-radius: 25px;
	width: 55%;
	max-width: 820px;
    margin: 0 auto 65px;
	padding: 25px 50px;
	z-index: 1;
}

#mainVisual .searchBox p {
	font-size: 20px;
}

#mainVisual .searchBox p.bgWhite {
	color:#2f5c97;
	background: #fff;
	padding: 2px 15px;
	display: inline-block;
	border-radius: 10px;
}

#mainVisual h2 {
    background: none;
    font-size: 70px;
    margin: 0 auto 25px;
    font-weight: 500;
    letter-spacing: 8px;
    padding: 0;
    line-height: 1;
}

#mainVisuArea p.subText {
	font-size: 23px;
	letter-spacing: 2px;
}

#mainVisuArea .mushimegane {
    position: absolute;
    width: 90px;
    height: 90px;
    background: #fff;
    border-radius: 50px;
    padding: 25px;
    box-sizing: border-box;
	top: -50px;
    left: -45px;
}

#mainVisuArea .mushimegane img {
    width: 40px;
}

#mainVisuArea h3 {
    color: #595757;
    font-weight: normal;
	font-size: 25px;
	margin-bottom: 45px;
}

#mainVisuArea h3 span {
    color: #435764;
	font-weight: 500;
}
	
#mainVisuArea ul.flexBox {
	max-width: 1120px;
	width: 94%;
	margin: 0 auto;
	flex-wrap: wrap;
	justify-content: center;
}
	
#mainVisuArea ul.flexBox li {
	width: 23.5%;
	padding:18px;
	background: #efefef;
	box-sizing: border-box;
	margin: 0 2% 50px 0;
}

#mainVisuArea ul.flexBox li:last-child {
	margin: 0 0 50px 0;
}

#mainVisuArea ul.flexBox li .photo {
	margin-bottom: 20px;
	line-height: 0;
}	
	
#mainVisuArea ul.flexBox li img {
	width: 100%;
}

#mainVisuArea ul.flexBox li p {
	color: #231815;
	font-size: 12px;
	line-height: 2;
    margin-bottom: 20px;
}	

#mainVisuArea .bgGray {
	font-size: 14px;
	color:#435764;
	background: #efefef;
	display: inline-block;
	padding: 20px 100px;
	line-height: 1;
	font-weight: bold;
	border-radius: 50px;
}


	

@media screen and ( max-width:767px) { 
	img {
		width: 100%;
	}
	
	body {
		width: 100%;
		overflow-x: hidden;
	}
	
	.sp {
		display: block;
	}
	
	.pc {
		display: none;
	}
	
	.tel {
		pointer-events: inherit;
	}
	
	#wrapper {
		min-height:unset;
	}
	
	header {
		padding: 0.6rem 0 ;
	}
	
	/*header .flexBox {
		display: unset;
		overflow: hidden;
		zoom:1;
	}*/

	header .flexBox #logo {
		float: left;
		width: 43%;
	}
    
    header .flexBox #logo a {
        text-align: left;
        display: block;
    }
    
    header .flexBox #logo a img {
        max-width: 100%;
    }
    	
	#telephone {
		margin: 0.3rem 0 0;
		display: block;
		width: auto;
	}

	#telephone p {
		display: block;
		font-size: 40%;
		margin: 0 0.5rem 3px;
	}
	
	#sharehouse #telephone p {
		font-size: 8px;
		line-height: 1.6;
	}


	#telephone p:last-child {
		margin: 0 0.5rem 0;
		text-align: center;
	}
	
    .tel {
        pointer-events: inherit;
        font-size: 22px;
        letter-spacing: -1px;
    }
	
	.tel_text {
		padding-left: 45px;
	}
	
    .tel:before {
        width: 45px;
        height: 27px;
        background-size: 35px;
    }	
	
	#sharehouse .tel_text:before {
		width: 46px;
		height: 27px;
		background-size: 27px;
	}
	
	
	.inner {
		max-width: unset;
		width: 96%;
	}
	
	h1 {
		margin-top: 100px;
		text-align: center;
		font-size: 130%;
	}
	
	h1.reserve {
		margin-top: 50px;
	}
	
	#sharehouse #contact h1 {
		margin-top: 30px;
	}
	
	h2 {
		font-size: 110%;
		background: #717C68;
		color: #FFF;
		text-align: center;
		padding: 0.4rem 0;
		margin: 1rem auto 1rem;
	}
	
	h3#bukken {
		font-size: 110%;
		text-align: center;
		width: 100%;
		margin: 0 auto 0.4rem;
	}
	
	.w50 {
		width: 80%;
		margin: 0 auto;
	}	
	
	.mtb2 {
		margin: 1rem 0 2rem;
	}
	
	.mt {
		margin-bottom: 0.8rem;
	}
	
	table.formTable td,table.formTable th{
		border-top:none;
	}
	
	table.formTable th {
		width: 100%;
		display: block;
		padding: 0.8rem 0 0;
	}

	table.formTable td {
		width: 100%;
		display: block;
		padding: 0.8rem 0 1rem;
	}

	input[type="text"],textarea,input[type="tel"],input[type="email"] {
		padding: 0.4rem;
		border: 0.5px solid #ddd;
		width: 96%;
	}
	
	input[type="text"].calendar {
		width: 50%;
		margin-bottom: 10px;
	}
	
	input[type="text"].zip {
		width: 36%;
	}
	
		input[type="tel"] {
		width: 40.5%;
	}

	table.formTable td .flexBox {
		justify-content: flex-start;
		flex-wrap: wrap;
	}

	table.formTable td .flexBox li {
		width: 50%;
		font-size: 90%;
	}
	
	#sharehouse table.formTable td .flexBox li {
		width: 100%;
	}
	
	table.formTable td .flexBox li.after {
		width: 100%;
	}
	
	#btnList {
		text-align: center;
		margin-bottom: 2rem;
	}
	
	footer {
		height: auto;
		margin-top: 3rem;
	}
	
	footer #logo {
		width: 43%;
	}
    
    footer #logo img {
        max-width: 100%;
    }
	
	#sharehouse #nitiji.open,#sharehouse #nitiji2.open,#sharehouse #nitiji3.open{
		font-size: 90%;
	}  
	
	.box {
		width: 100%;
		margin-bottom: 1.6rem;
		padding: 1rem 0;
	}

	.box p {
		font-size: 90%;
	}
	
	table.formTable td .flexBox.radio02 li {
		width: 50%;
	}
	
	.annotation {
		text-align: left;
	}
	
	table.formTable td .flexBox li.shirai {
		width: 100%;
	}
	
	.lineBtn {
		margin-top: 100px;
	}
	
	.lineBtn a {
		line-height: 50px;
		font-size: 16px;
	}
	
	.lineBtn a:before {
		background-size: 38px;
		height: 45px;
		width: 45px;
	}
	
	/*＝＝＝＝メインビジュアル部分＝＝＝＝*/


	#mainVisual.kansai,#mainVisual.kanto {
		padding: 80px 0 80px;
		margin-bottom: 60px;
	}

	#mainVisual .searchBox {
		width: 70%;
		max-width: unset;
		margin: 0 auto 40px;
		padding: 20px;
	}

	#mainVisual .searchBox p {
		font-size: 16px;
	}

	#mainVisual .searchBox p.bgWhite {
		padding: 2px 0;
		margin: 5px 0;
		display: block;
	}

	#mainVisual h2 {
		font-size: 26px;
		letter-spacing: 2px;
	}

	#mainVisuArea p.subText {
		font-size: 16px;
		letter-spacing: 1px;
	}

	#mainVisuArea .mushimegane {
		width: 70px;
		height: 70px;
		padding: 15px;
		top: -40px;
    	left: -22px;
	}

	#mainVisuArea .mushimegane img {
		width: 35px;
	}

	#mainVisuArea h3 {
		font-size: 18px;
		margin-bottom: 30px;
	}

	#mainVisuArea ul.flexBox {
		max-width: unset;
		width: 94%;
		margin-bottom: 30px;
	}

	#mainVisuArea ul.flexBox li {
		width: 48%;
		padding:10px;
		margin: 0 2% 2% 0;
	}
	
	#mainVisuArea ul.flexBox li:nth-child(2n) {
		margin: 0 0 2% 0;
	}

	#mainVisuArea ul.flexBox li .photo {
		margin-bottom: 10px;
	}	

	#mainVisuArea ul.flexBox li p {
		font-size: 11px;
		line-height: 2;
		margin-bottom: 0;
	}	

	#mainVisuArea .bgGray {
		font-size: 14px;
		padding: 10px 50px;
		line-height: 1.6;
	}

	.infoBox {
		width: 90%;
		box-sizing: border-box;
	}

	.infoBox p {
		font-size: 15px;
	}

	.infoBox a {
		font-size: 15px;
	}

	.thanks .tel_text {
		font-size: 40px;
		padding-left: 62px;
	}

	.thanks .tel:before {
		width: 55px;
		height: 55px;
		background-size: 55px;
	}


	
	
	
	

	
	
}

@media screen and ( min-width:768px) { 
	
	.shirai {
		font-size: 15px;
	}
	
	select {
		width: 25%;
	}
	
	
	
	
	
	
}

@media screen and ( min-width:768px) and ( max-width:1179px) { 
	
	#telephone {
		width: 60%;
	}
	
	#telephone p {
		font-size: 55%;
		width: 60%;
	}
	
	#telephone p:last-child {
		width: 40%;
	}
	
	#mainVisual.kansai,#mainVisual.kanto {
		padding: 100px 0 100px;
		margin-bottom: 70px;
	}	
	
	#mainVisual h2 {
		font-size: 50px;
	}
	
	#mainVisuArea p.subText {
		font-size: 20px;
	}
	
	#mainVisuArea ul.flexBox {
		margin-bottom: 4%;
	}
	
	#mainVisuArea ul.flexBox li {
		width: 48%;
		margin-bottom: 4%;
	}
	
	#mainVisual .searchBox {
		width: 55%;
	}	
	
	.tb {
		display:block;
	}
	
.infoBox {
    width: 80%;
}

.infoBox p {
    font-size: 16px;
}

.infoBox a {
    font-size: 16px;
}
	
	
	
	
}


/*＝＝＝＝＝＝
事前アンケート
＝＝＝＝＝＝＝*/

.survey {
    background: #f4f2f1;
    margin: 0 0 20px;
    padding: 40px 0 60px;
}

.survey .text {
	margin-bottom: 40px;
	font-size: 22px;
	font-weight: 800;
	color:#5b4a3f;
}

.survey .flexBox {
    justify-content: space-between;
    width: 100%;
    max-width: 800px;
    margin: 0 auto 60px;
}

.survey .flexBox .iconList {
    width: 33%;
	display: block;
}

.survey .flexBox .iconList .icon {
    width: 150px;
	margin: 0 auto;
	text-align: center;
}


.survey .flexBox .iconList .iconimage {
    background: #fff;
    border-radius: 300px;
    padding: 30px;
    display: block;
    width: 130px;
	height: 130px;
	margin: 0 auto 30px;
	box-sizing: border-box;
}

.survey .flexBox .iconList img {
    width: 100%;
}

.survey .flexBox .iconList p {
    text-align: center;
	display: block;
}

.accordionTitleWrap {
	max-width: 360px;
	margin: 0 auto;
}

.accordionTitle {
    color: #ffffff;
    cursor: pointer;
    padding: 10px 20px;
    position: relative;
    width: 100%;
    background: #908075;
    text-align: center;
    line-height: 2;
    font-size: 18px;
    font-weight: bold;
	box-sizing: border-box;
}

.accordionContent {
  display: none;
}

.accordionContent table.formTable tr:first-child td,.accordionContent table.formTable tr:first-child th {
	border:none;
} 

.accordionTitle::after {
    position: absolute;
    margin: auto;
    content: "";
	top: 33%;
    right: 11%;
    box-sizing: border-box;
    width: 12px;
    height: 24px;
    border: 12px solid transparent;
    border-top: 16px solid #ffffff;
}

.accordionTitle.open::after {
	margin: auto;
  top: 10%;
  transform: rotate(-180deg);
}

.underLine {
	border-bottom: 1px solid #2697f5;
}

@media screen and ( max-width:768px) { 
	
	.survey {
		margin: 0 0 10px;
		padding: 30px 0 40px;
	}	

	.survey .text {
		margin-bottom: 25px;
		font-size: 18px;
	}
	
	.survey .flexBox {
		display: block;
		margin: 0 auto 30px;
	}

	.survey .flexBox .iconList {
		width: 90%;
		display: flex;
		margin: 0 auto 15px;
		align-items: center;
	}
	
	.survey .flexBox .iconList .icon {
		width: 25%;
		margin: 0 auto;
		text-align: center;
	}


	.survey .flexBox .iconList .iconimage {
		padding: 15px;
		width: 70px;
		height: 70px;
		margin: 0 auto 0;
	}
	
	.survey .flexBox .iconList p {
		width: 75%;
		text-align: left;
        margin-left: 20px;
	}	
	
	.accordionTitleWrap {
		width: 82%;
		margin: 0 auto;
	}

	.accordionTitle {
		line-height: 1.8;
		font-size: 16px;
		margin: 0 auto;
	}

	.accordionTitle::after {
		right: 8%;
		width: 10px;
		height: 20px;
		border: 10px solid transparent;
		border-top: 14px solid #ffffff;
	}	

	
	
	
	
}



