@charset "utf-8";
/* CSS Document */
.top_img {
	width: 100vw;
	height: 35vw;
	background: url("../images/about_top.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top;
}
@media (max-width: 1000px) {
	.top_img {
		height: 50vw;
	}
}
@media (max-width: 500px) {
	.top_img {
		height: 55vh;
	}
}
.about_top {
	position: relative;
	text-align: center;
}
.dots7 {
	position: absolute;
	top: 10%;
	left: calc(50% - 33%);
	width: 7%;
    min-width: 60px;
	height: auto;
}
.about_top h2 {
	margin: 100px auto 50px;
}
.about_top h2 span {
	color: #f98f41;
}
.about_top p {
	width: 45%;
	margin: 0 auto 180px;
	text-align: left;
}
@media (max-width: 1280px) {
	.dots7 {
		top: -3%;
		left: calc(50% - 45%);
	}
	.about_top h2 {
		margin: 80px auto 50px;
	}
	.about_top p {
		width: 70vw;
		margin: 0 auto 80px;
	}
}
@media (max-width: 800px) {
    .about_top p {
		width: 80vw;
		margin: 0 auto 80px;
	}
}
@media (max-width: 430px) {
	.dots7 {
		top: -5%;
		left: calc(50% - 42%);
		width: 13%;
	}
	.about_top {
		position: relative;
		display: block;
	}
	.about_top h2 {
		margin: 60px auto 50px;
	}
	.about_top p {
		width: 80vw;
		margin: 0 auto 100px;
	}
}
#summary {
	text-align: center;
	padding: 150px 0 250px;
	margin-top: -150px;
	position: relative;
}
#summary h2 {
	margin: 0 auto;
	color: #f98f41;
	width: 6em;
	padding-bottom: 80px;
}

.dots8 {
	position: absolute;
	top: 10%;
	right: calc(50% - 33%);
	width: 7%;
    min-width: 60px;
	height: auto;
}
.table {
	width: 47%;
	margin: 0 auto;
	text-align: left;
	font-size: clamp(14px, 1vw, 18px);
}
.table2,
.table3 {
	display: none;
}
.td {
	text-align: right;
}
.table th {
	width: 20px;
	padding: 2% 1% 0 0;
	font-weight: 500;
}
.table th,
.table td {
	padding: 2% 0 1%;
	border-bottom: solid 1px #ffcb97;
}
.table tr:last-child th,
.table tr:last-child td {
	border-bottom: none;
}
.table td {
	width: 43.5%;
	padding-left: 8%;
}
.td span {
	display: block;
	padding-bottom: 1%;
	font-weight: 700;
}
.td.td-bold {
	font-weight: 700;
}
.td_inner th,
.td_inner td {
	width: 3%;
	border-bottom: none;
	font-weight: 400;
}
.history_img {
	position: absolute;
	top: -20%;
	left: -10%;
	width: 28vw;
	z-index: 3;
}
@media (max-width: 1280px) {
	#summary {
		padding: 150px 0 150px;
		margin-top: -150px;
	}
	#summary h2 {
		width: 6em;
		padding-bottom: 50px;
	}

	.dots8 {
		top: 15%;
		right: calc(50% - 45%);
	}
	.table {
		width: 60vw;
		font-size: clamp(14px, 1vw, 16px);
	}
}
@media (max-width: 1000px) {
	.table {
		width: 70vw;
		font-size: clamp(14px, 1vw, 16px);
	}
}
@media (max-width: 750px) {
	#summary {
		padding: 150px 0 100px;
		margin-top: -150px;
	}
    .dots8 {
		top: 11%;
		right: calc(50% - 45%);
	}
	.table {
		display: none;
	}
    .table2,
	.table3 {
		display: block;
		width: 60%;
		margin: 0 auto 100px;
		text-align: left;
		font-size: 14px;
	}
	.table2 td,
	.table3 td {
		text-align: right;
	}
	.table2 th,
	.table3 th {
		width: 13%;
		padding: 2% 1% 0 0;
		font-weight: 500;
	}
	.table2 th,
	.table2 td {
		padding: 2% 0 1%;
		border-bottom: solid 1px #ffcb97;
	}
	.table2 tr:last-child th,
	.table2 tr:last-child td {
		border-bottom: none;
	}
	.table2 td {
		width: 43.5%;
		padding-left: 3%;
	}
	.table2 td span {
		display: block;
		padding-bottom: 1%;
	}
	.table3 th,
	.table3 td {
		padding: 2% 0 1%;
		border-bottom: solid 1px #ffcb97;
	}
	.table3 tr:last-child th,
	.table3 tr:last-child td {
		border-bottom: none;
	}
	.table3 td {
		width: 43.5%;
		padding-left: 8%;
	}
	.table3 td span {
		display: block;
		padding-bottom: 1%;
	}
	.td_inner {
		width: 100%;
	}
	.td_inner th,
	.td_inner td {
		width: 10%;
		border-bottom: none;
		font-weight: 400;
	}
	.history_img {
		position: absolute;
		top: -20%;
		left: -8%;
		width: 28vw;
		z-index: 3;
	}
}
@media (max-width: 600px) {
	.table2,
	.table3 {
		width: 80%;
	}
}
@media (max-width: 430px) {
	#summary {
		padding: 150px 0 30px;
		margin-top: -150px;
	}
	#summary h2 {
		padding-bottom: 60px;
	}

	.dots8 {
		top: 10%;
		right: calc(50% - 40%);
		width: 13%;
	}
}
#history {
	position: relative;
	background-color: #fff7db;
	padding: 150px 0 200px;
	text-align: center;
}
#history h2 {
	padding-bottom: 100px;
}
#history h2 span {
	color: #f98f41;
}
.history_table {
	width: 47vw;
	margin: 0 auto;
	text-align: left;
	font-size: clamp(16px, 1vw, 18px);
}
.history_table th {
	width: 5.7%;
	padding: 2% 0;
	font-weight: 500;
	text-align-last: justify;
}
.history_table th,
.history_table td {
	padding: 3% 0 1%;
}
.history_table td {
	width: 30%;
	padding-left: 5%;
}
.history_img {
	position: absolute;
	bottom: -150px;
	left: -100px;
	width: 28vw;
	z-index: 3;
}
@media screen and (max-width: 1280px) {
    .history_table {
		width: 60vw;
	}
	.history_table th {
		min-width: 60px;
	}
}
@media (max-width: 1000px) {
	#history {
		padding: 80px 0 100px;
	}
	#history h2 {
		padding-bottom: 50px;
	}
	#history h2 span {
		color: #ffcb97;
	}
	.history_table {
		width: 70vw;
		font-size: clamp(14px, 1vw, 16px);
	}
	.history_table th {
		min-width: unset;
	}
	.history_table td {
		width: 22%;
	}
	.history_img {
		top: -9%;
		width: 35vw;
	}
}
@media (max-width: 600px) {
	#history {
		padding: 80px 0 80px;
		z-index: 1000;
	}
	#history h2 {
		padding-bottom: 30px;
	}
	.history_table {
		width: 80vw;
		font-size: clamp(13px, 0.9vw, 15px);
	}
	.history_table th {
		width: 8%;
	}
	.history_table td {
		width: 20%;
	}
	.history_img {
		top: -9%;
		width: 45vw;
	}
}
#summary2 {
	position: relative;
	background-color: #fff7db;
	padding: 200px 0 200px;
	margin-top: -150px;
	text-align: center;
}
#summary2 h2 {
	color: #f98f41;
	padding-bottom: 100px;
}
.summary2_inner {
	width: 60%;
	margin: 0 auto;
}
.summary2_table {
	text-align: left;
	font-size: clamp(14px, 1vw, 18px);
	width: 80%;
    margin: 0 auto;
}
.summary2_table th {
	width: 20%;
	padding: 2% 0;
	font-weight: 500;
}
.summary2_table td {
	width: 80%;
	padding-left: 5%;
}
.summary2_table th,
.summary2_table td {
	border-bottom: solid 1px #ffcb97;
}
.summary2_table tr:last-child th,
.summary2_table tr:last-child td {
	border-bottom: none;
}
.summary2_table rt {
	font-size: 0.7em;
}
.summary2_inner iframe {
	width: 100%;
	height: 20vw;
	padding-left: 4%;
}
.td2_inner th,
.td2_inner td {
	width: 50%;
	border-bottom: none;
	font-weight: 400;
	padding: 1.5% 0;
	line-height: 2.2rem;
}
.td2_inner td {
	text-align: right;
	padding-right: 8%;
}
.pdf {
    width: 60%;
    margin: 0 auto;
}
.pdf_inner {
    margin: 100px auto 50px;
    width: 80%;
}
.pdf p {
    text-align: left;
    font-size: clamp(1.4rem, 1vw, 1.8rem);
}
.pdf a p{
    position: relative;
    font-weight: 600;
    color: #f98f41;
    padding: 0 0 25px 25px;
}
.pdf a p::after{
    position: absolute;
    content: '';
    display: inline-block;
    background-image: url("../images/PDFアイコン.png");
    background-size: contain;
    width: 18px;
    height: 18px;
    top: 4px;
    left: 0;
}
@media (max-width: 1280px) {
	#summary2 {
		padding: 150px 0 100px;
	}
	#summary2 h2 {
		padding-bottom: 50px;
	}
	.summary2_inner {
		display: block;
		width: 60vw;
	}
	.summary2_table {
		text-align: left;
		font-size: clamp(14px, 1vw, 18px);
		width: 100%;
		margin-bottom: 30px;
	}
	.summary2_table th {
		width: 20%;
		padding: 2% 0;
		font-weight: 500;
	}
	.summary2_table td {
		width: 50%;
		padding-left: 5%;
	}
	.summary2_table th,
	.summary2_table td {
		border-bottom: solid 1px #ffcb97;
	}
	.summary2_table tr:last-child th,
	.summary2_table tr:last-child td {
		border-bottom: none;
	}
	.summary2_inner iframe {
		width: 100%;
		height: 40vw;
		padding-left: 0;
	}
	.td2_inner th,
	.td2_inner td {
		width: 50%;
		border-bottom: none;
		font-weight: 400;
		padding-left: 0;
	}
	.td2_inner td {
		text-align: right;
	}
    .pdf {
    width: 100%;
}
    .pdf_inner {
    width: 60%;
}
}
@media (max-width: 1000px) {
	.summary2_inner {
		display: block;
		width: 70vw;
	}
    .pdf_inner {
    width: 70%;
}
}
@media (max-width: 500px) {
	#summary2 {
		padding: 150px 0 100px;
	}
	#summary2 h2 {
		padding-bottom: 30px;
	}
	.summary2_inner {
		display: block;
		width: 80vw;
	}
	.summary2_table {
		text-align: left;
		font-size: 14px;
		width: 100%;
		margin-bottom: 30px;
	}
	.summary2_table th {
		width: 20%;
		padding: 1% 0;
		font-weight: 500;
	}
	.summary2_table td {
		width: 50%;
		padding-left: 5%;
	}
	.summary2_table th,
	.summary2_table td {
		border-bottom: solid 1px #ffcb97;
	}
	.summary2_table tr:last-child th,
	.summary2_table tr:last-child td {
		border-bottom: none;
	}
	.summary2_table rt {
		position: relative;
		top: 0.5em;
		transform: translateY(0.5em);
	}
	.summary2_inner iframe {
		width: 100%;
		height: 50vw;
		padding-left: 0;
	}
	.td2_inner th,
	.td2_inner td {
		width: 57%;
		border-bottom: none;
		font-weight: 400;
		padding-left: 0;
		line-height: 2.4rem;
	}
	.td2_inner td {
		text-align: right;
	}
     .pdf_inner {
    width: 80%;
}
}
#inquiry {
	padding: 170px 0 100px;
	margin-top: -50px;
}
#inquiry h2 {
	border-bottom: dotted 4px #ffcb97;
	padding-bottom: 10px;
	margin: 0 auto 30px;
	text-align: left;
	width: 50vw;
}
.p2 {
	width: 50vw;
	margin: 0 auto 30px;
}
.inquiry_img {
	display: flex;
	width: 50vw;
	height: auto;
	margin: 0 auto 20px;
	align-items: center;
}
.address_inner {
	display: flex;
	align-items: center;
}
.address_inner img {
	width: 13vw;
    max-width: 200px;
    min-width: 120px;
	height: auto;
	border-radius: 0.3vw;
}
.address {
	padding: 0 2vw 0 1vw;
}
.address span {
	display: block;
	font-weight: 500;
	padding-bottom: 15px;
}
.phone span {
	display: block;
	font-size: clamp(30px, 3vw, 35px);
	font-weight: 500;
}
.phone_img {
	display: flex;
	justify-content: center;
	align-items: center;
	border-bottom: dotted 4px #ffcb97;
	padding-bottom: 10px;
}
.phone_img img {
	width: 3vw;
    max-width: 60px;
    min-width: 50px;
	height: 3vw;
    max-height: 60px;
    min-height: 50px;
	margin-right: 15px;
}
.phone_img p {
	font-size: clamp(16px, 1.6vw, 22px);
	font-weight: 500;
}
.p3 {
	text-align: center;
	font-size: clamp(16px, 1.5vw, 20px);
	font-weight: 500;
}
.map {
	width: 50vw;
	margin: 0 auto;
}
.map img {
	width: 50vw;
	margin: 20px 0 30px;
}
.map p:nth-child(5) {
	padding-bottom: 40px;
}
.map a {
	color: #f98f41;
	font-size: clamp(14px, 1vw, 18px);
	padding-top: 40px;
	display: block;
	font-weight: 500;
}
.map span {
	font-weight: 500;
}
@media (max-width: 1280px) {
	#inquiry {
		padding: 170px 0 40px;
	}
	#inquiry h2 {
		padding-bottom: 6px;
		margin: 0 auto 15px;
		width: 70vw;
	}
	.p2 {
		width: 70vw;
		margin: 0 auto 15px;
	}
	.inquiry_img {
		width: 70vw;
	}
	.address_inner img {
		border-radius: 8px;
	}
	.address {
		width: 65%;
		padding: 0 2vw 0 1vw;
	}
	.address span {
		display: block;
		font-weight: 500;
		padding-bottom: 5px;
	}
	.phone span {
		display: block;
		font-size: clamp(30px, 3vw, 40px);
		font-weight: 500;
	}
	.phone_img {
		display: flex;
		justify-content: space-between;
		align-items: center;
		border-bottom: dotted 4px #ffcb97;
		padding-bottom: 10px;
	}
	.phone_img img {
		margin-right: 15px;
	}
	.map {
		width: 70vw;
		margin: 0 auto;
	}
	.map img {
		width: 100%;
		margin: 20px 0 30px;
	}
	.map p:nth-child(5) {
		padding-bottom: 40px;
	}
	.map a {
		color: #f98f41;
		font-size: clamp(14px, 1vw, 18px);
		padding-top: 40px;
		display: block;
	}
	.map span {
		font-weight: 500;
	}
}
@media (max-width: 800px) {
	#inquiry h2 {
		padding-bottom: 6px;
		margin: 0 auto 15px;
		width: 80vw;
	}
	.p2 {
		width: 80vw;
		margin: 0 auto 15px;
	}
	.inquiry_img {
		width: 80vw;
	}
	.map {
		width: 80vw;
		margin: 0 auto;
	}
}
@media (max-width: 680px) {
	.inquiry_img {
		width: 80vw;
		display: block;
		margin-bottom: 50px;
	}
    .phone_img {
		display: flex;
        justify-content: flex-start;
		align-items: center;
		border-bottom: dotted 4px #ffcb97;
		padding-bottom: 10px;
		width: 70%;
	}
    .address_inner {
		margin-bottom: 10px;
	}
    .address {
		padding: 0 2vw;
	}
    .p3 {
		text-align: center;
		width: 70%;
	}
    .map {
		width: 100vw;
		margin: 0 auto;
	}
	.map img {
		width: 100%;
		margin: 0 0 30px;
	}
	.map p {
		width: 90%;
		margin: 0 auto;
	}
	.map a {
		color: #f98f41;
		font-size: clamp(14px, 1vw, 18px);
		padding-top: 40px;
		display: block;
		width: 90%;
		margin: 0 auto;
	}
	.map span {
		font-weight: 500;
	}
}
@media (max-width: 430px) {
	#inquiry {
		padding: 100px 0 40px;
		margin-top: -60px;
	}
	#inquiry h2 {
		padding-bottom: 6px;
		margin: 0 auto 15px;
		width: 80vw;
	}
	.p2 {
		width: 80vw;
		margin: 0 auto 20px;
	}
	.inquiry_img {
		width: 80vw;
		display: block;
		margin-bottom: 50px;
	}
	.address {
		width: 100%;
		padding: 0 2vw 0 3vw;
	}
	.address span {
		display: block;
		font-weight: 500;
		padding-bottom: 5px;
	}
	.phone span {
		display: block;
		font-size: clamp(30px, 3vw, 40px);
		font-weight: 500;
	}
	.phone_img {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 90%;
	}
    .phone_img img {
	width: 2vw;
    min-width: 50px;
	height: 2vw;
    min-height: 50px;
	margin-right: 15px;
}
	.phone_img p {
		width: 80%;
	}
	.p3 {
		text-align: center;
		width: 80%;
	}
}

ruby[data-ruby] {
	position: relative;
}
ruby[data-ruby]::before {
	content: attr(data-ruby);
	position: absolute;
	line-height: 100%;
	text-align: center;
	left: -3em;
	right: -3em;
	transform-origin: bottom center;
	/* ルビの文字サイズを親文字に対する比率で指定 */
	transform: scale(0.5);
	/* 100%を越える部分が親文字とルビとのスペースになる。単位は親文字に対する比率 */
	bottom: 88%;
}
ruby[data-ruby] rt {
	display: none;
}
.summary2_table tr:nth-child(5) td,
.summary2_table tr:nth-child(8) td {
	padding-bottom: 2%;
}
