@charset "UTF-8";
/******************************************
[reset]
******************************************/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@400;700&display=swap");
*,
::before,
::after {
	position : relative;

	box-sizing : border-box;
	}

::before, ::after {
	vertical-align : inherit;
	text-decoration : inherit;
	}

* {
	margin : 0;
	padding : 0;
	}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display : block;
	}

[hidden],
template {
	display : none;
	}

small {
	font-size : 80%;
	}

ul, ol {
	list-style : none;
	}

table {
	border-collapse : collapse;
	border-spacing : 0;
	}

a {
	background-color : transparent;
	text-decoration : none;

	-webkit-text-decoration-skip : objects;
	}

a:active, a:hover {
	outline-width : 0;
	}

b, strong {
	font-weight : bolder;
	}

img {
	border-style : none;
	}

input,
button,
textarea,
select {
	color : inherit;
	border : 0;

	-webkit-appearance : none;
	   -moz-appearance : none;
	outline : 0;
	}

input,
button,
textarea,
select,
optgroup {
	font : inherit;
	}

[disabled] {
	cursor : default;
	}

input[type="number"] {
	-moz-appearance : textfield;
	}

input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button {
	margin : 0;

	-webkit-appearance : none;
	}

::-webkit-file-upload-button {
	-webkit-appearance : button;
	font : inherit;
	}

input::-ms-clear {
	visibility : hidden;
	}

optgroup {
	font-weight : bold;
	}

select::-ms-expand {
	display : none;
	}

select::-ms-value {
	color : currentColor;
	}

textarea {
	overflow : auto;
	}

button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
	cursor : pointer;
	}

button {
	overflow : visible;
	background : none;
	}

::-moz-selection,
::selection {
	background-color : #b3d4fc;
	color : #000000;

	text-shadow : none;
	}

@font-face {
	font-family : 'icomoon';
	font-weight : normal;

	font-style : normal;
	src : url("../img/fonts/icomoon.eot?-sub1jy");
	src : url("../img/fonts/icomoon.eot?#iefix-sub1jy") format("embedded-opentype"), url("../img/fonts/icomoon.woff?-sub1jy") format("woff"), url("../img/fonts/icomoon.ttf?-sub1jy") format("truetype"), url("../img/fonts/icomoon.svg?-sub1jy#icomoon") format("svg");
	}

[class^="icon-"],
[class*=" icon-"] {
	font-family : 'icomoon';
	font-weight : normal;
	line-height : 1;
	/* Better Font Rendering =========== */

	-webkit-font-smoothing : antialiased;
	font-style : normal;
	font-variant : normal;
	-moz-osx-font-smoothing : grayscale;
	speak : none;
	text-transform : none;
	}

.icon-number01:before {
	content : "\e90a";
	}

.icon-number02:before {
	content : "\e90b";
	}

.icon-number03:before {
	content : "\e90e";
	}

.icon-number04:before {
	content : "\e90f";
	}

.icon-number05:before {
	content : "\e910";
	}

.icon-mail:before {
	content : "\f0e0";
	}

.icon-check:before {
	content : "\e902";
	}

.icon-arrow-down:before {
	content : "\e903";
	}

.icon-arrow-left:before {
	content : "\e904";
	}

.icon-arrow-right:before {
	content : "\e905";
	}

.icon-arrow-up:before {
	content : "\e906";
	}

.icon-sp:before {
	content : "\e90c";
	}

.icon-square-line:before {
	content : "\e900";
	}

.icon-tel:before {
	content : "\e90d";
	}

.icon-arrow-circle:before {
	content : "\e901";
	}

.icon-circle:before {
	content : "\e907";
	}

.icon-square:before {
	content : "\e908";
	}

.icon-dot:before {
	content : "\e909";
	}

/******************************************
[font]
******************************************/
html {
	font-size : 62.5%;
	}

body {
	font-size : 1.6em;
	}

/******************************************
[mixin]
******************************************/
/******************************************
[base]
******************************************/
html {
	font-size : 62.5%;
	}

body {
	background : #ffffff;
	color : #333333;
	font-family : 'Noto Sans JP', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴシック', 'Yu Gothic', 'Helvetica', 'Arial', sans-serif;
	font-size : 1.5em;
	line-height : 1.6;
	letter-spacing : 0.5px;
	position : relative;
	}

body a {
	color : #333333;
	}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
li,
dl,
dt,
dd,
ol,
th,
td,
div,
a,
input {
	font-size : 100%;
	font-weight : normal;

	font-style : normal;
	}

img {
	vertical-align : top;
	vertical-align : bottom;
	height : auto;
	max-width : 100%;
	max-width : 100%;
	border : none;
	}

#sb-site {
	background : #ffffff;
	}

main {
	overflow : hidden;
	width : 100%;
	margin : 0 auto;
	}

.inner {
	width : 90%;
	margin : 0 auto;
	}

.inner-base {
	width : 90%;
	margin : 0 auto;
	padding : 50px 0;
	}

.inner-bottom {
	width : 90%;
	margin : 0 auto;
	padding : 0 0 50px;
	}

.btn-style, .btn01 a {
	display : block;
	width : 80%;
	text-decoration : none;
	text-align : center;
	line-height : 1;
	margin : 0 auto;
	cursor : pointer;
	}

.btn01 {
	border-radius : 5px;
	}

.btn01 a {
	display : block;
	background-color : #ec6a00;
	width : 70%;
	color : #ffffff;
	text-align : center;
	margin : 0 auto;
	padding : 15px 10px;
	position : relative;
	border-radius : 30px;
	}

.btn01 i {
	position : absolute;
	top : 50%;
	right : 5px;
	transform : translateY(-50%);
	}

.btn02 {
	background : url(../img/pat-btn.jpg);
	background-size : 100% auto;
	padding : 3px;
	box-shadow : 0 2px 2px 0 rgba(230, 0, 18, 0.2);
	}

.btn02 a {
	display : block;
	color : #ffffff;
	text-align : center;
	font-family : "Noto Sans JP", sans-serif;
	font-size : 1.8rem;
	padding : 15px 5px;
	position : relative;
	border : 1px solid rgba(255, 255, 255, 0.5);
	}

.btn02 a i {
	position : absolute;
	top : 50%;
	right : 5px;
	transform : translateY(-50%);
	}

.half {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	width : 100%;
	}

.half li {
	width : 48%;
	}

.half-right {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	width : 100%;
	}

.half-right li {
	width : 48%;
	}

.half-right li:first-child {
	order : 2;
	}

.half-right li:last-child {
	order : 1;
	}

.pic-left {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	width : 100%;
	}

.pic-left li:first-child {
	width : 31%;
	margin : 0 3% 0 0;
	}

.pic-left li:last-child {
	width : 66%;
	}

.pic-right {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	width : 100%;
	}

.pic-right li:first-child {
	order : 2;
	width : 31%;
	margin : 0 0 0 3%;
	}

.pic-right li:last-child {
	order : 1;
	width : 66%;
	}

.triple {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	}

.triple li {
	width : 31%;
	}

.txt-st {
	font-weight : bold;
	}

.txt-red {
	color : #e60012;
	}

.mg01 {
	margin : 0 0 15px;
	}

.mg02 {
	margin : 0 0 30px;
	}

.mg03 {
	margin : 0 0 40px;
	}

.mg04 {
	margin : 0 0 60px;
	}

.mg05 {
	margin : 0 0 80px;
	}

.note {
	font-size : 1.2rem;
	line-height : 1.3;
	padding : 0 0 0 1em;
	text-indent : -1em;
	}

.note span {
	color : #e60012;
	}

#pageTop a {
	display : block;
	width : 40px;
	position : fixed;
	bottom : 10px;
	right : 5px;
	z-index : 1000;
	}

/******************************************
[hタグ]
******************************************/
h1 {
	display : none;
	}

h2 {
	background : url(../img/logo-mark.png) left center no-repeat;
	background-size : 36px auto;
	color : #ec6a00;
	font-family : "maru-maru-gothic-alr-stdn", sans-serif;
	font-size : 2.2rem;
	font-weight : bold;
	margin : 0 0 20px;
	padding : 8px 0 8px 48px;
	border-top : 2px solid #ec6a00;
	border-bottom : 2px solid #ec6a00;
	}

h3 {
	color : #ec6a00;
	font-family : "maru-maru-gothic-alr-stdn", sans-serif;
	font-size : 2.0rem;
	font-weight : bold;
	margin : 0 0 15px;
	padding : 0 0 3px;
	border-bottom : 2px dotted #ec6a00;
	}

/******************************************
[nav]
******************************************/
#sp-menu {
	display : block;
	background-color : rgba(255, 255, 255, 0.9);
	width : 100%;
	height : 60px;
	padding : 5px;
	position : fixed;
	top : 0;
	left : 0;
	z-index : 100;
	}

#sp-menu li:first-child {
	width : 50px;
	position : absolute;
	top : 0;
	left : 0;
	z-index : 99999;
	}

#sp-menu li:nth-child(2) {
	position : absolute;
	left : 50%;
	z-index : 99997;
	transform : translateX(-50%);
	}

#sp-menu li:nth-child(2) img {
	width : auto;
	height : 50px;
	}

#sp-menu li:last-child {
	width : 50px;
	position : absolute;
	top : 0;
	right : 0;
	z-index : 99998;
	}

.sb-slidebar {
	background-color : #ec6a00;
	position : relative;
	border-right : 1px solid rgba(255, 255, 255, 0.3);
	}

.sb-slidebar li {
	line-height : 1;
	border-bottom : 1px solid rgba(255, 255, 255, 0.2);
	}

.sb-slidebar li a {
	display : block;
	color : #ffffff;
	font-family : "maru-maru-gothic-alr-stdn", sans-serif;
	font-size : 1.6rem;
	line-height : 1em;
	letter-spacing : 1px;
	padding : 18px 15px;
	}

.sb-slidebar li:first-child {
	display : block;
	}

.sb-slidebar li:first-child p {
	width : 60px;
	}

.menu-ad {
	background-color : #ffffff;
	padding : 20px 15px;
	}

/******************************************
[index.html]
******************************************/
main {
	padding : 60px 0 0;
	}

.concept-ttl {
	color : #ec6a00;
	text-align : center;
	font-family : "maru-maru-gothic-alr-stdn", sans-serif;
	font-size : 2.4rem;
	font-weight : bold;
	margin : 0 0 20px;
	}

.concept-ttl span {
	display : block;
	width : 90%;
	margin : 0 auto 10px;
	}

.cont01-pic {
	width : 90%;
	margin : 0 0 15px;
	}

.concept-txt {
	line-height : 1.8;
	margin : 0 0 15px;
	}

.concept-frame {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	align-items : center;
	color : #ec6a00;
	padding : 15px;
	border : 1px solid #ec6a00;
	border-radius : 10px;
	}

.concept-frame .material-icons {
	width : 16%;
	font-size : 4.0rem;
	}

.concept-frame p {
	width : 84%;
	font-size : 1.3rem;
	}

.topics-frame {
	overflow : hidden;
	background-color : #ffffff;
	border-radius : 10px;
	}

.topics-inner {
	padding : 15px;
	}

.news-ttl {
	background : url(../img/title-bg.png) bottom no-repeat;
	background-size : 100% auto;
	width : 100%;
	color : #ffffff;
	text-align : center;
	font-family : "maru-maru-gothic-alr-stdn", sans-serif;
	font-size : 2.5rem;
	font-weight : 500;
	letter-spacing : 5px;
	padding : 12px 0 15px;
	}

.top-bnr {
	overflow : hidden;
	border-radius : 10px;
	box-shadow : 0 0 6px 2px rgba(220, 220, 220, 0.7);
	}

footer {
	background : url(../img/bg01.jpg) no-repeat;
	background-size : cover;
	text-align : center;
	padding : 50px 0 0;
	border-top : 1px solid #d9ea95;
	}

footer address {
	font-size : 1.3rem;
	}

.footer-logo {
	width : 65%;
	margin : 0 auto 30px;
	}

.info-note {
	background-color : #fff0d2;
	color : #ec6a00;
	text-align : left;
	font-size : 1.2rem;
	margin : 10px 0;
	padding : 10px;
	border-radius : 5px;
	}

.tel-txt {
	background-color : #ec6a00;
	width : 80%;
	color : #ffffff;
	text-align : center;
	font-family : "maru-maru-gothic-alr-stdn", sans-serif;
	font-size : 1.3rem;
	margin : 0 auto 5px;
	padding : 5px;
	border-radius : 30px;
	}

.tel a {
	display : block;
	color : #ec6a00;
	font-size : 3.5rem;
	font-weight : bold;
	line-height : 1;
	margin : 0 0 20px;
	}

.tel i {
	display : inline-block;
	vertical-align : baseline;
	font-size : 2.5rem;
	margin : 0 5px 0 0;
	}

.copyrt {
	background : url(../img/copy-bg.png) no-repeat;
	background-size : 100% auto;
	color : #ffffff;
	font-size : 1.2rem;
	margin : 40px 0 0;
	padding : 25px 0 20px;
	}

/******************************************
[topics]
******************************************/
#topics {
	background-color : #fff0d2;
	}

#topics li,
#list li {
	margin : 0 0 10px;
	padding : 0 0 10px;
	border-bottom : 2px dashed #dcdcdc;
	}

#topics #topics_date,
#list #topics_date {
	display : block;
	font-family : "maru-maru-gothic-alr-stdn", sans-serif;
	font-size : 1.2rem;
	font-weight : bold;
	}

#topics #topics_title,
#list #topics_title {
	display : block;
	overflow : hidden;
	width : 100%;
	text-overflow : ellipsis;
	white-space : nowrap;
	}

.more-btn a {
	display : block;
	color : #ec6a00;
	text-align : right;
	font-size : 1.3rem;
	font-weight : bold;
	}

.more-btn a .icon-arrow {
	vertical-align : text-bottom;
	font-size : 1.6rem;
	}

#topics_paging {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	justify-content : center;
	width : 100%;
	}

#topics_paging_previous,
#topics_paging_next {
	background-color : #dcdcdc;
	width : 9em;
	color : #ffffff;
	text-align : center;
	line-height : 2.5;
	margin : 0 10px;
	border-radius : 5px;
	}

#topics_paging_previous a,
#topics_paging_next a {
	display : block;
	background-color : #f88b15;
	width : 9em;
	color : #ffffff;
	border-radius : 5px;
	}

#detail #topics_date {
	text-align : right;
	font-size : 1.2rem;
	margin : 20px 0;
	}

#detail #topics_title {
	color : #ec6a00;
	font-family : "Noto Sans JP", sans-serif;
	font-size : 2.0rem;
	font-weight : 500;
	line-height : 1.3;
	margin : 0 0 20px;
	padding : 0 0 10px;
	border-bottom : 1px double #dcdcdc;
	}

#detail #topics_body img[class^="topics_photo_"] {
	max-width : 100%;
	margin : 0 0 10px;
	}

#detail #topics_body {
	height : auto;
	max-width : 100%;
	}

.back-btn a {
	display : block;
	background-color : #f88b15;
	width : 9em;
	color : #ffffff;
	text-align : center;
	line-height : 2.5;
	margin : 0 auto;
	border-radius : 5px;
	}

/******************************************
[under common]
******************************************/
#pagettl {
	background : url(../img/pagettl-bg.jpg) no-repeat;
	background-size : cover;
	width : 100%;
	height : 0;
	padding-bottom : calc(180/750*100%);
	position : relative;
	}

#pagettl p {
	width : 100%;
	color : #ec6a00;
	text-align : center;
	font-family : "maru-maru-gothic-alr-stdn", sans-serif;
	font-size : 2.8rem;
	font-weight : bold;
	line-height : 1.2;
	position : absolute;
	top : 50%;
	left : 50%;
	transform : translate(-50%, -50%);
	}

.white-bg {
	background-color : #ffffff;
	padding : 15px;
	}

.orange-bg {
	background-color : #fff0d2;
	padding : 15px;
	border-radius : 10px;
	}

.gray-line {
	padding : 20px 15px 15px;
	border : 1px solid #dcdcdc;
	border-radius : 10px;
	}

.orange {
	color : #ec6a00;
	}

.line {
	background : linear-gradient(transparent 60%, #fff0d2 60%);
	color : #ec6a00;
	font-weight : bold;
	}

.bold {
	font-weight : bold;
	}

.pic {
	overflow : hidden;
	width : 98%;
	border-radius : 10px;
	box-shadow : 5px 5px 0 0 #fff0d2;
	}

.info {
	background-color : #fff0d2;
	padding : 15px;
	border-radius : 10px;
	}

.info-li {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	align-items : center;
	}

.info-li li:first-child {
	width : 67%;
	font-family : "maru-maru-gothic-alr-stdn", sans-serif;
	font-weight : bold;
	}

.info-li li:last-child {
	width : 30%;
	}

.info-tel a {
	display : block;
	color : #ec6a00;
	text-align : center;
	font-size : 3.5rem;
	font-weight : bold;
	border-top : 2px dotted #f88b15;
	border-bottom : 2px dotted #f88b15;
	}

.info-tel a i {
	font-size : 2.8rem !important;
	margin : 0 3px 0 0;
	}

/******************************************
[greeting.html]
******************************************/
.greeting-pic {
	overflow : hidden;
	width : 80%;
	margin : 0 auto 30px;
	border-radius : 10px;
	box-shadow : 5px 5px 0 0 #fff0d2;
	}

/******************************************
[price.html]
******************************************/
.price01-li {
	margin : 0 0 40px;
	}

.price01-li li {
	background-color : #fff0d2;
	color : #ec6a00;
	text-align : center;
	font-family : "maru-maru-gothic-alr-stdn", sans-serif;
	font-size : 2.2rem;
	font-weight : bold;
	margin : 0 0 15px;
	padding : 10px;
	border-radius : 5px;
	}

.price01-li li div {
	display : inline-block;
	background-color : #ec6a00;
	color : #ffffff;
	font-size : 1.8rem;
	margin : 0 15px 0 0;
	padding : 3px 10px;
	border-radius : 5px;
	}

.price01-li li span {
	font-size : 1.2rem;
	}

.price-note li {
	margin : 0 0 15px;
	padding : 0 0 0 1.2em;
	text-indent : -0.7em;
	}

.price-note .material-icons {
	vertical-align : text-bottom;
	color : #f88b15;
	font-size : 1.6rem;
	margin : 0 0.3em 0 0;
	}

/******************************************
[soudan.html]
******************************************/
.soudan-dl {
	overflow : hidden;
	border-radius : 10px;
	}

.soudan-dl dt {
	background-color : #f88b15;
	color : #ffffff;
	font-family : "maru-maru-gothic-alr-stdn", sans-serif;
	font-size : 2.0rem;
	padding : 8px;
	}

.soudan-dl dt span {
	overflow : hidden;
	background-color : #ffffff;
	color : #ec6a00;
	font-size : 1.5rem;
	margin : 0 10px 0 0;
	padding : 5px 10px;
	border-radius : 30px;
	}

.soudan-dl dd {
	padding : 15px;
	border : 1px solid #f88b15;
	border-radius : 0 0 10px 10px;
	}

.flow-arrow {
	width : 30%;
	margin : 20px auto;
	}

/******************************************
[faq.html]
******************************************/
.faq-dl {
	margin : 0 0 30px;
	padding : 0 0 30px;
	border-bottom : 2px dotted #dcdcdc;
	}

.faq-dl dt {
	background : url(../img/icon-faq.png) no-repeat;
	background-size : 34px auto;
	color : #ec6a00;
	font-size : 1.8rem;
	font-weight : bold;
	line-height : 1.5;
	margin : 0 0 10px;
	padding : 0 0 0 40px;
	}

.faq-txt {
	color : #ec6a00;
	text-align : center;
	font-family : "maru-maru-gothic-alr-stdn", sans-serif;
	font-size : 1.8rem;
	}

/******************************************
[oketanishiki.html]
******************************************/
.oketanishiki-li {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	align-items : center;
	}

.oketanishiki-li li:first-child {
	width : 60%;
	}

.oketanishiki-li li:first-child p {
	background-color : #c2d869;
	color : #ffffff;
	text-align : center;
	font-family : "maru-maru-gothic-alr-stdn", sans-serif;
	font-size : 1.8rem;
	padding : 5px;
	border-radius : 30px;
	}

.oketanishiki-li li:first-child p:not(:last-child) {
	margin : 0 0 8px;
	}

.oketanishiki-li li:last-child {
	width : 38%;
	}

/******************************************
[access.html]
******************************************/
#access01 .half {
	margin : 20px 0;
	}

#access01 .half li {
	overflow : hidden;
	border-radius : 5px;
	}

.access-logo {
	width : 65%;
	margin : 0 auto 30px;
	}

.station {
	color : #ec6a00;
	text-align : center;
	font-size : 2.0rem;
	margin : 0 0 20px;
	padding : 10px 0;
	border-top : 2px dotted #ec6a00;
	border-bottom : 2px dotted #ec6a00;
	}

.station i {
	vertical-align : text-bottom;
	margin : 0 3px 0 0;
	}

/******************************************
[table]
******************************************/
.table01 {
	overflow : hidden;
	width : 100%;
	border-radius : 10px;

	border-collapse : collapse;
	}

.table01 tr {
	border-bottom : solid 2px #ffffff;
	}

.table01 th {
	background-color : #ec6a00;
	width : 5.5em;
	color : #ffffff;
	text-align : left;
	text-align : center;
	padding : 10px 5px;
	position : relative;
	}

.table01 td {
	background-color : #fff0d2;
	text-align : left;
	padding : 10px;
	}

.table02 {
	width : 100%;
	}

.table02 th {
	width : 6em;
	text-align : left;
	font-weight : bold;
	padding : 18px 0;
	border-bottom : 1px solid #dcdcdc;
	}

.table02 td {
	padding : 18px 0 18px 10px;
	border-bottom : 1px solid #dcdcdc;
	}

.table03 {
	width : 100%;
	}

.table03 th {
	min-width : 7em;
	text-align : left;
	font-weight : bold;
	padding : 15px 0;
	border-bottom : 1px solid #dcdcdc;
	}

.table03 td {
	padding : 15px;
	border-bottom : 1px solid #dcdcdc;
	}

.table03 td span {
	font-size : 1.2rem;
	}

.table04 {
	width : 100%;
	text-align : center;
	font-size : 13px;
	border : 1px solid #dcdcdc;
	}

.table04 th {
	background-color : #e60012;
	min-width : 5em;
	font-weight : bold;
	padding : 10px 5px;
	border : 1px solid #dcdcdc;
	}

.table04 td {
	width : 37%;
	padding : 10px 5px;
	border : 1px solid #dcdcdc;
	}

.table04 tr:first-child th,
.table04 tr:first-child td {
	background-color : #e60012;
	color : #ffffff;
	}

.table-note {
	display : block;
	font-size : 1.2rem;
	padding-left : 1em;
	text-indent : -1em;
	}

/******************************************
[改行切り替え]
******************************************/
.sp {
	display : none;
	}

.pc {
	display : block;
	}

@media screen and (max-width: 576px) {
	.sp {
		display : block;
		}
	.pc {
		display : none;
		}
	}
