@charset "utf-8";
/* CSS Document */

@media print{
   /*印刷用CSSで適用させる定義を記述*/
    .to_top{
        display: none;
    }
}

html {    
    overflow-x: hidden;
    overflow-y: scroll;
    /*font-size: 62.5%;*/
    font-size:92.5%;    
}

/*-----------------------------------------------------------*/

@media screen and (max-width: 1700px) {
  html {  
      font-size:90%;
	}
}

@media screen and (max-width: 1400px) {
    html {
      font-size:87.5%;
	}
}

@media screen and (max-width: 1300px) {
    html {
	   font-size:85%;
	}
}

@media screen and (max-width: 1200px) {
  html {
      font-size:72.5%;
	}    
}

/*-----------------------------------------------------------*/

body {
    font-family: "Zen Maru Gothic", serif;
    font-size: 1.08rem;/*100%;*/
    -webkit-text-size-adjust: none;
	color: #333;
    overflow: hidden;
    font-weight: 500;
    font-style: normal;
    line-height: 1.5;
}

#all_wrap {
}

::-webkit-scrollbar-track {
  background: none;
}
::-webkit-scrollbar {
  width: 0px;
  height: 0px;
}
::-webkit-scrollbar-thumb {
  background: #ccc;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

*{
	margin: 0;
	padding: 0;
}

*:focus {
  outline: none;
}

img {
	max-width: 100%;
	height: auto;
	border: 0;
	vertical-align: top;
	vertical-align: bottom;
}

.pc_hide {
	display: none !important;
}

.sp_hide {
}

a {
	font-size: 1.08rem;
	outline: none;
	color: #333;
	text-decoration:none;
	transition: 0.3s;
	opacity: 1;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
    cursor:pointer;
}

a:hover {
	opacity: 0.5;
}

/*電話番号のリンク（.tellink）はPCではOFF*/
a.tellink{
    pointer-events: none;
}

ul{
    list-style-type: none;
}

input, textarea{
    /*bodyと同じフォントcssを入れる*/
    font-family: "Zen Maru Gothic", serif;
    font-size: 1.08rem;/*100%;*/
    -webkit-text-size-adjust: none;
	color: #333;
    overflow: hidden;
    font-weight: 500;
    font-style: normal;
    line-height: 1.5;
}
input:-webkit-autofill {
    box-shadow: 0 0 0 1000px white inset;
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"], input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    background: transparent;
}

select::-ms-expand {
    display: none;
}

button{
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
}

/*-----------------------------------------------------------*/
/*フォント*/

.noto-sans-jp{
	font-family: "Noto Sans JP", sans-serif;
}

.zen-kaku-gothic-new{
	font-family: "Zen Kaku Gothic New", sans-serif;
}

.zen-maru-gothic{
	font-family: "Zen Maru Gothic", serif;
}

/*-----------------------------------------------------------*/
/*リンク（横幅・高さ指定無し）*/


/*-----------------------------------------------------------*/
/*ヘッダー*/

#header_wrap{
    width: 100%;
    position: relative;
    z-index: 10;
}

#header_wrap .logo{
    /*width: 26.62rem;*/
	width: 30.62rem;
	height: 3.78rem;
	position: absolute;
    top: 3.11rem;
    left: 0;
    right: 0;
    margin: auto;
    transform: translate(-31.08rem);
    z-index: 1;	
}
#header_wrap .logo img{
    width: 100%;
	height: auto;
}

#header_wrap #g-nav ul{
    width: 57.43rem;
	height: 5.41rem;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 3.04rem;
	background-color: #fff;
	-webkit-border-radius: 45px;
	-moz-border-radius: 45px;
	border-radius: 45px;
	/**/
    position: absolute;
    top: 2.50rem;
    left: 0;
    right: 0;
    margin: auto;
    transform: translate(17.03rem);
    z-index: 1;	
}
#header_wrap #g-nav ul li{
    width: fit-content;
    position: relative;
}
#header_wrap #g-nav ul li:not(:last-child)::before{
    content: '';
	display: block;
	width: 0.68rem;
	height: 0.68rem;
	background-color: #EF685E;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	position: absolute;
	top: 0.61rem;
	bottom: 0;
	right: -1.69rem;
}

#header_wrap #g-nav ul li a{
	font-size: 106.3%;
}

#header_wrap #g-nav ul li.current a, #header_wrap #g-nav ul li a:hover{
	color: #EF685E;
	opacity: 1.0;
}


/*-----------------------------------------------------------*/
/*コアページ*/

main#coa{
	background-color: #FFF8E6;
}

section#coatitle{
	background: url("../image/common/bg_coatitle.jpg") no-repeat;
	background-size: cover;
	width: 100%;
	height: 400px;
	position: relative;
}
section#coatitle::before{
	content: '';
	display: block;
	background: url("../image/common/bg_coatitle_parts.png") no-repeat;
	background-size: 100% auto;
	background-position: center bottom;
	width: 100%;
	height: 100%;
	position: absolute;
	bottom: -1px;
}

section#coatitle .inner{
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
}
section#coatitle .inner > h2{
	font-size: 40px;
	font-weight: 700;
	color: #EF685E;
	margin-top: 205px;
}

main#coa section h3{
	font-size: 168.75%;
	font-weight: 700;
	color: #EF685E;
	text-align: center;
	padding-bottom: 2.03rem;
	position: relative;
}
main#coa section h3::before{
    content: '';
    display: block;
    background: url(../image/top/a03-3.png) no-repeat;
    background-size: contain;
    width: 4.19rem;
    height: 0.88rem;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

/*-----------------------------------------------------------*/
/*フッター*/

#footer_wrap{
	padding: 0.68rem 0 0;
	background: url("../image/common/footer-bg.png") no-repeat;
	background-size: cover;
	background-position: top center;
	background-color: #FFF8E6;
}

#footer_wrap .info{
	background: url("../image/common/footer-parts.png") no-repeat;
	background-size: 36.82rem 20.88rem;
	background-position: top center;
	width: 36.82rem;
	height: 20.88rem;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	filter: drop-shadow(0px 0px 0.68rem rgba(124,108,99,0.20));
	
}
#footer_wrap .info dl{
	text-align: center;
}
#footer_wrap .info dl dt{
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 500;
}
#footer_wrap .info dl dd{
	font-size: 162.50%;
	color: #EF685E;
	font-weight: 700;
	line-height: 120%;
	line-height: 130%;
}
#footer_wrap .info dl dd > span{
	font-size: 85%;
}
#footer_wrap .info > p{
	margin-top: 2.03rem;
	font-size: 106.3%;
	font-weight: 700;
}
#footer_wrap .info > p > span{
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 106.3%;
	font-weight: 500;
}

#footer_wrap .copy{
	padding: 4.39rem 0 3.72rem;
	font-size: 87.50%;
	color: #705856;
	text-align: center;
}

/*-----------------------------------------------------------*/
/*下部固定メニュー*/

.footer_area{
	display: none;
}

/*-----------------------------------------------------------*/
/*to top*/

#pagetop {
    position: fixed;
    right: 5%;
    bottom: 5%;
    z-index: 10;
	filter: drop-shadow(0px 0px 10px rgba(124,108,99,0.30));
}

/*-----------------------------------------------------------*/
/*アニメーション*/

/*フェードアップ*/
.fadeUpTrigger, .afterloadfadeUp{
    opacity: 0;
}
.fadeUp{
    animation-name:fadeUpAnime;
    animation-duration:0.8s;
    animation-fill-mode:forwards;
    opacity:0;
}
@keyframes fadeUpAnime{
  from {
    opacity: 0;
    transform: translateY(100px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/*ズームアウト*/
.zoomOutTrigger, .afterloadzoomOut{
    opacity: 0;
}
.zoomOut{
    animation-name:zoomOutAnime;
    animation-duration:0.5s;
    animation-fill-mode:forwards;
    opacity: 0;
}
@keyframes zoomOutAnime{
    from {
      transform: scale(1.2);
      opacity: 0;
    }
    to {
      transform: scale(1.0);
      opacity: 1.0;
    }
}

/*ズームアップ*/
a.zoomup img{
    transition-duration: 0.3s;
}
a.zoomup:hover img{
    transform: scale(1.05);
    transition-duration: 0.3s;
}

/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*ipad横向き時*/
@media screen and (max-width: 1500px) and (orientation: landscape) {
    
}/*ここまで*/

/*ipad縦向き時*/
@media screen and (min-width: 820px) and (orientation: portrait) {
 
}/*ここまで*/

/*-----------------------------------------------------------*/
/*色別*/

/*YELLOW*/
html.pageYellow {
}

/*BLACK*/
html.pageBlack {
}

/*BLUE*/
html.pageBlue {
}


/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/

