@charset "utf-8";
/* Copyright 2021 FSFIELD All Rights Reserved. */

/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

パソコン、スマートフォン（iPhone,Android) 共通

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

/* ------------------------------------------------------------

basic

------------------------------------------------------------ */

@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 500;
}

@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}

*{font-family:"Zen Maru Gothic", Yu Gothic, "游ゴシック", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;}

html{
    -moz-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

body{
	color:#333333;
	font-weight: 400;
}

/* ------------------------------------------------------------

shortcodes

------------------------------------------------------------ */

/* font
---------------------------------------------- */
.normal{font-weight: normal !important;}
.bold{font-weight: bold !important;}
.italic{font-style: italic !important;}

/* display
---------------------------------------------- */
.none{display: none !important;}

/* margin
---------------------------------------------- */
.mb_none{margin-bottom: 0 !important;}


@media print, screen and (min-width:768px){ /* 表示領域が768px以上の場合に適用するスタイル */
	/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

	PC

	_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

	/* ------------------------------------------------------------

	common

	------------------------------------------------------------ */

	body{
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 1.6;
	}
	
	.sp{display: none !important;}
	
	.pc_br{display: block;}

	/* レイアウト
	---------------------------------------------- */
	#wrap_all{
		min-width: 1200px;
		overflow: hidden;
	}

	.wrap_type01,
	.wrap_type02{
		width: 1000px;
		padding-top: 50px;
		margin: 0 auto 120px;
	}

	/*--404ページ--*/	
	.wrap_404{
		text-align: center;
		padding-top: 100px;
		margin-bottom: 200px;
	}

	.ttl_404{
		font-size: 5rem;
		font-weight: bold;
		margin-bottom: 12px;
	}

	.txt_404{margin-bottom: 30px;}

	/* リンク
	---------------------------------------------- */
	.link01{
		color: #333;
		text-decoration: underline !important;
	}

	.link01:hover{text-decoration: none !important;}

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

	/* ページタイトル
	---------------------------------------------- */
	.pagettl{position: relative;}

	.pagettl::before{
		content: "";
		display: block;
		width: 80%;
		height: 280px;
		background-color: #585A61;
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
		border-radius: 0 0 0 20px;
		margin-left: auto;
		box-shadow: -30px 0 30px rgb(0 0 0 / 5%);
	}

	.pagettl_inner{
		width: 1000px;
		font-size: 1.5rem;
		line-height: 1.2;
		padding-top: 55px;
		margin: 0 auto;
	}

	.pagettl_inner::before{
		content: "";
		display: block;
		width: calc((100% - 1000px) / 2 - 60px);
		height: 2px;
		background-color: #E78058;
		position: absolute;
		bottom: 44px;
		left: 0;
	}

	.pagettl_inner span{
		display: block;
		font-size: 4.2rem;
		font-weight: bold;
		margin-bottom: 3px;
	}

	/* 見出し
	---------------------------------------------- */
	.heading01{
		font-size: 2.2rem;
		font-weight: bold;
		line-height: 1.2;
		padding-left: 12px;
		position: relative;
	}

	.heading01::before{
		content: "";
		display: block;
		width: 4px;
		height: 24px;
		background: #E6D599;
		border-radius: 2px;
		position: absolute;
		top: 2px;
		left: 0;
	}

	.heading02{
		display: inline-block;
		font-size: 2.6rem;
		font-weight: bold;
		line-height: 1.2;
		margin-bottom: 20px;
		position: relative;
	}

	.heading02::after{
		content: "";
		display: block;
		width: 100%;
		height: 12px;
		background: #F5E674;
		position: absolute;
		left: 0;
		bottom: -2px;
		z-index: -1;
	}

	/* パンくずリスト
	---------------------------------------------- */
	.breadcrumb{
		width: 80%;
		font-size: 1.2rem;
		padding: 3px 22px;
		margin-left: auto;
	}

	.breadcrumb ul{
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}

	.breadcrumb ul li{
		display: inline;
		vertical-align: middle;
		color: #333333;
		padding-right: 17px;
		margin-right: 9px;
		position: relative;
	}

	.breadcrumb ul li::after{
		content: "";
		display: block;
		background: url("../img/ico_arrow03.png") no-repeat 0 0;
		background-size: contain;
		width: 4px;
		height: 7px;
		position: absolute;
		top: 5px;
		right: 0;
	}

	.breadcrumb ul li:last-child{
		padding-right: 0;
		margin-right: 0;
	}

	.breadcrumb ul li:last-child::after{display: none;}

	.breadcrumb ul li a{color: #333333;}

	.breadcrumb ul li a:hover{opacity: .7;}

	/* ボタン
	---------------------------------------------- */
	.btn_type01{
		display: inline-block;
		width: 300px;
	}

	.btn_type01 a{
		display: block;
		color: #333;
		font-size: 1.5rem;
		font-weight: bold;
		text-align: center;
		line-height: 1.2;
		border: 2px solid #333;
		border-radius: 32px;
		background: url(../img/ico_mark01.png) no-repeat right 18px top 19px;
		background-size: 28px;
		padding: 22px 10px 20px;
	}

	.btn_type01 a:hover{opacity: .7;}
    
    .btn_type01.pdf span{
        position: relative;
        display: inline-block;
        padding-right: 20px;
        background: url("../img/ico_pdf01.png")no-repeat right 0 top;
        background-size: 16px;
        line-height: 20px;
    }

	/* テーブル
	---------------------------------------------- */
	.type01{width: 100%;}

	.type01 th,
	.type01 td{
		font-size: 1.8rem;
		line-height: 1.8;
		border: 1px solid #CDCDCD;
		padding: 10px 20px 6px;
	}

	.type01 th{
		width: 175px;
		text-align: center;
		background: #F9F5E7;
	}

	.type01 td span.red{color: #FF2626;}

	/* リスト
	---------------------------------------------- */


	/* ------------------------------------------------------------

	header

	------------------------------------------------------------ */

	#wrap_top{
		width: 100%;
		color: #BABABA;
		font-size: 1.1rem;
		font-weight: bold;
		line-height: 1.2;
		text-align: right;
		padding: 3px 40px 0;
		position: absolute;
		top: 0;
		left: 0;
	}

	.wrap_top_inner .cloned{display: none;}

	#header{
		background: #FFF;
		padding: 0 40px;
		position: relative;
	}

	.header_inner{
		display: flex;
		justify-content: space-between;
		align-items: center;
		height: 120px;
	}

	.h_logo{max-width: 240px;}

	.h_logo a{display: inline-block;}

	.h_logo a img{
		width: 100%;
		height: auto;
	}

	/* グローバルナビ
	---------------------------------------------- */
	.drawer{padding-top: 12px;}

	.nav_global{margin-left: 60px;}

	.nav_global ul{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 882px;
	}

	.nav_global ul li a{
		display: block;
		color: #333;
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 1.2;
		text-align: center;
	}

	.nav_global ul li a:hover{opacity: .7;}

	.nav_global ul li a span{
		display: block;
		font-size: 1.2rem;
		margin-top: 3px;
	}

	.nav_global ul li.g01 a span{color: #E75B58;}
	.nav_global ul li.g02 a span{color: #E78058;}
	.nav_global ul li.g03 a span{color: #E7D958;}
	.nav_global ul li.g04 a span{color: #76C938;}
	.nav_global ul li.g05 a span{color: #58B5E7;}
	.nav_global ul li.g06 a span{color: #C176DE;}
	.nav_global ul li.g07 a span{color: #DE7094;}

	.m_logo,
	.m_tel,
	.drawer_inner address,
	.btn_close{display: none;}


	/* ------------------------------------------------------------

	footer

	------------------------------------------------------------ */

	.footer_inner{
		font-size: 1.5rem;
		line-height: 1.2;
		text-align: center;
		background: #F9F5E7;
		padding: 110px 0 30px;
	}

	.footer_inner address{margin-bottom: 5px;}

	.f_logo{margin-bottom: 20px;}

	.f_logo a{display: inline-block;}

	.f_logo a img{
		width: 240px;
		height: auto;
	}

	.f_tel{margin-bottom: 45px;}

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

	.f_bottom{
		color: #D0BC8C;
		font-size: 1.1rem;
	}

	.f_bottom small{
		display: block;
		margin-bottom: 5px;
	}

	.bn_footer{
		width: 660px;
		height: 180px;
		font-size: 1.3rem;
		line-height: 1.6;
		text-align: left;
		background: url(../img/pc/btn_blog01.png) no-repeat 0 0;
		background-size: 100%;
		border-radius: 9px;
		overflow: hidden;
		padding: 25px 15px 10px 350px;
		margin: 0 auto 50px;
	}

	.bn_footer .ttl{
		color: #DE7094;
		font-size: 2rem;
		font-weight: bold;
		line-height: 1.2;
		margin: 0 0 12px -10px;
	}

	.bn_footer .btn_blog{margin-top: 15px;}

	.bn_footer .btn_blog a{
		display: block;
		width: 146px;
		color: #FFF;
		line-height: 1.2;
		text-align: center;
		border-radius: 18px;
		background: #DE7094 url(../img/ico_tab01.png) no-repeat right 22px top 13px;
		background-size: 10px;
		padding: 11px 20px 10px 0;
	}

	.bn_footer .btn_blog a:hover{opacity: 0.7;}

	/* ナビ
	---------------------------------------------- */
	.nav_footer{margin-bottom: 65px;}

	.nav_footer ul{
		display: flex;
		justify-content: center;
	}

	.nav_footer ul li{margin-right: 45px;}

	.nav_footer ul li:last-child{margin-right: 0;}

	.nav_footer ul li a{
		display: block;
		color: #333;
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 1.2;
	}

	.nav_footer ul li a:hover{opacity: .7;}

	/* ページトップボタン
	---------------------------------------------- */
	#pagetop{display: none;}


}/*--@media--*/


@media print{ /* 印刷時のみ */
	/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

	PC

	_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

	/* ------------------------------------------------------------

	common

	------------------------------------------------------------ */

	/* レイアウト
	---------------------------------------------- */	
	#wrap_all{
		width: 1200px;
		transform: scale(0.8);
		transform-origin: 0 0;
	}


}/*--@media--*/


@media only screen and (max-width:767px){ /* 表示領域が767px以下の場合に適用するスタイル */
	/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

	スマートフォン（iPhone,Android)

	_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

	/* ------------------------------------------------------------

	common

	------------------------------------------------------------ */

	body{
		font-size: 14px;
		font-size: 1.4rem;
		line-height: 1.6;
	}
	
	.pc{display: none !important;}
	
	.sp_br{display: block;}

	/* レイアウト
	---------------------------------------------- */
	#wrap_all{
		min-width: 320px;
		overflow: hidden;
	}

	.wrap_type01{padding: 40px 15px 60px;}

	.wrap_type02{padding: 40px 0 60px;}

	/*--404ページ--*/
	.wrap_404{
		text-align: center;
		padding: 100px 20px 0;
		margin-bottom: 100px;
	}
	
	.ttl_404{
		font-size: 3rem;
		font-weight: bold;
		margin-bottom: 12px;
	}
	
	.txt_404{margin-bottom: 30px;}
	
	/* リンク
	---------------------------------------------- */
	.link01{
		color: #333;
		text-decoration: underline !important;
	}
	
	.link_tel01{
		color: #333;
		text-decoration: underline !important;
	}

	/* ページタイトル
	---------------------------------------------- */
	.pagettl{position: relative;}

	.pagettl::before{
		content: "";
		display: block;
		width: 90%;
		height: 140px;
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
		border-radius: 0 0 0 20px;
		margin-left: auto;
		box-shadow: -30px 0 30px rgb(0 0 0 / 5%);
	}

	.pagettl_inner{
		font-size: 1.3rem;
		line-height: 1.2;
		padding: 30px 15px 0;
	}

	.pagettl_inner span{
		display: block;
		font-size: 3.4rem;
		font-weight: bold;
		margin-bottom: 5px;
	}

	/* 見出し
	---------------------------------------------- */
	.heading01{
		font-size: 1.8rem;
		font-weight: bold;
		line-height: 1.2;
		padding-left: 12px;
		position: relative;
	}

	.heading01::before{
		content: "";
		display: block;
		width: 3px;
		height: 20px;
		background: #E6D599;
		border-radius: 1.5px;
		position: absolute;
		top: 1px;
		left: 0;
	}

	.heading02{
		display: inline-block;
		font-size: 1.8rem;
		font-weight: bold;
		line-height: 1.2;
		margin-bottom: 20px;
		position: relative;
	}

	.heading02::after{
		content: "";
		display: block;
		width: 100%;
		height: 12px;
		background: #F5E674;
		position: absolute;
		left: 0;
		bottom: -2px;
		z-index: -1;
	}


	/* パンくずリスト
	---------------------------------------------- */
	.breadcrumb{
		width: 90%;
		font-size: 1.2rem;
		padding: 5px 15px;
		margin-left: auto;
	}

	.breadcrumb ul{
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	
	.breadcrumb ul li{
		display: inline;
		vertical-align: middle;
		color: #333333;
		padding-right: 15px;
		margin-right: 7px;
		position: relative;
	}
	
	.breadcrumb ul li::after{
		content: "";
		display: block;
		background: url("../img/ico_arrow03.png") no-repeat 0 0;
		background-size: contain;
		width: 4px;
		height: 7px;
		position: absolute;
		top: 6px;
		right: 0;
	}

	.breadcrumb ul li:last-child{
		padding-right: 0;
		margin-right: 0;
	}

	.breadcrumb ul li:last-child::after{display: none;}

	.breadcrumb ul li a{color: #333333;}

	/* ボタン
	---------------------------------------------- */
	.btn_type01{
		display: inline-block;
		width: 250px;
	}

	.btn_type01 a{
		display: block;
		color: #333;
		font-size: 1.3rem;
		font-weight: bold;
		text-align: center;
		line-height: 1.2;
		border: 2px solid #333;
		border-radius: 32px;
		background: url(../img/ico_mark01.png) no-repeat right 15px top 15px;
		background-size: 24px;
		padding: 17px 10px 16px;
	}
    
    .btn_type01.pdf span{
        position: relative;
        display: inline-block;
        padding-right: 20px;
        background: url("../img/ico_pdf01.png")no-repeat right 0 top;
        background-size: 16px;
        line-height: 20px;
    }

	/* テーブル
	---------------------------------------------- */
	.type01{width: 100%;}

	.type01 th,
	.type01 td{
		line-height: 1.4;
		border: 1px solid #CDCDCD;
		padding: 8px 8px 7px;
	}

	.type01 th{
		width: 100px;
		background: #F9F5E7;
	}

	.type01 td span.red{
		display: block;
		color: #FF2626;
	}


	/* リスト
	---------------------------------------------- */


	/* ------------------------------------------------------------

	header

	------------------------------------------------------------ */

	#wrap_top{
		color: #BABABA;
		font-size: 1rem;
		font-weight: bold;
		line-height: 1.4;
		z-index: 2;
	}

	.wrap_top_inner{
		display: flex;
		flex-wrap: nowrap;
		padding: 1px 0;
	}

	.wrap_top_inner h1{white-space: nowrap;}

	.header_inner{
		height: 58px;
		padding: 0 15px 6px;
	}

	.h_logo{width: 160px;}

	.h_logo a{display: block;}

	.h_logo a img{
		width: 100%;
		height: auto;
	}

	/* メニュー
	---------------------------------------------- */
	/*--メニューを開いたとき背景固定--*/
	#wrap_all.open .wrapper{
		width: 100%;
		position: fixed;
		top: 74px;
		left: 0;
	}

	/*--メニューを開くボタン--*/
	.btn_menu{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		border-radius: 50%;
		background: #E75B58;
		cursor: pointer;
		z-index: 11;
		position: fixed;
		top: 20px;
		right: 15px;
	}

	.btn_menu span{
		display: block;
		width: 22px;
		height: 2px;
		background: #FFF;
		border-radius: 1px;
		transition: all 0.3s ease-in-out;
		position: absolute;
	}

	.btn_menu span:nth-of-type(1),
	.btn_menu span:nth-of-type(3){transition: all .3s;}

	.btn_menu span:nth-of-type(1){top: 15px;}
	.btn_menu span:nth-of-type(2){top: 21px;}
	.btn_menu span:nth-of-type(3){top: 27px;}

	#wrap_all.open .btn_menu span:nth-of-type(1){background: #FFF; transform: rotate(-45deg); top: 21px;}
	#wrap_all.open .btn_menu span:nth-of-type(2){display: none;}
	#wrap_all.open .btn_menu span:nth-of-type(3){background: #FFF; transform: rotate(45deg); top: 21px;}

	/* メニュー内
	---------------------------------------------- */
	.drawer{
		background: #F9F5E7;
		width: 100%;
		height: 100vh;
		transition: opacity .6s ease;
		opacity: 0;
		pointer-events: none;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 10;
		visibility: hidden;
	}

	.mode-sp .drawer{transition: opacity .3s;}

	#wrap_all.open .drawer{
		opacity: 1;
		pointer-events: auto;
		overflow: hidden;
		visibility: visible;
	}

	.drawer .drawer_inner{
		display: flex;
		flex-direction: column;
		width: 100%;
		height: 100%;
		color: #E75B58;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 1.2;
		text-align: center;
		padding: 16px 15px 80px;
		-webkit-overflow-scrolling: touch;
		overflow-y: scroll;
	}

	.drawer_inner .m_logo{
		width: 160px;
		margin-bottom: 30px;
	}

	.drawer_inner .m_logo a{display: block;}

	.drawer_inner .m_logo a img{
		width: 100%;
		height: auto;
	}

	.nav_global{
		padding: 0 10px;
		margin-bottom: 50px;
	}

	.nav_global ul li a{
		display: block;
		color: #333;
		font-size: 1.5rem;
		text-align: left;
		border-bottom: 2px dotted #E9D9A7;
		background: url(../img/ico_arrow01.png) no-repeat right center;
		background-size: 5px;
		padding: 17px 0 15px;
	}

	.nav_global ul li a span{
		font-size: 1.1rem;
		margin-left: 10px;
	}

	.nav_global ul li.g01 a span{color: #E75B58;}
	.nav_global ul li.g02 a span{color: #E78058;}
	.nav_global ul li.g03 a span{color: #E7D958;}
	.nav_global ul li.g04 a span{color: #76C938;}
	.nav_global ul li.g05 a span{color: #58B5E7;}
	.nav_global ul li.g06 a span{color: #C176DE;}
	.nav_global ul li.g07 a span{color: #DE7094;}

	.drawer_inner .m_tel{margin-bottom: 10px;}

	.drawer_inner .m_tel a{
		color: #E75B58;
		font-size: 2.5rem;
	}

	.drawer_inner address{font-size: 1.3rem;}


	/* ------------------------------------------------------------

	footer

	------------------------------------------------------------ */

	.footer_inner{
		font-size: 1.3rem;
		line-height: 1.2;
		text-align: center;
		background: #F9F5E7;
		padding: 40px 15px 15px;
	}

	.footer_inner address{margin-bottom: 5px;}

	.f_logo{margin-bottom: 20px;}

	.f_logo a{display: inline-block;}

	.f_logo a img{
		width: 160px;
		height: auto;
	}

	.f_tel{margin-bottom: 35px;}

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

	.f_bottom{
		color: #D0BC8C;
		font-size: 1rem;
	}

	.f_bottom small{
		display: block;
		margin-bottom: 5px;
	}

	.bn_footer{
		width: 300px;
		height: 300px;
		font-size: 1.3rem;
		line-height: 1.6;
		text-align: center;
		background: url(../img/sp/btn_blog01.png) no-repeat 0 0;
		background-size: 100%;
		border-radius: 9px;
		overflow: hidden;
		padding: 128px 25px 0;
		margin: 0 auto 40px;
	}

	.bn_footer .ttl{
		color: #DE7094;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 1.2;
		margin: 0 0 13px -7px;
	}

	.bn_footer .btn_blog{margin-top: 15px;}

	.bn_footer .btn_blog a{
		display: inline-block;
		width: 130px;
		color: #FFF;
		font-size: 1.2rem;
		line-height: 1.2;
		text-align: center;
		border-radius: 18px;
		background: #DE7094 url(../img/ico_tab01.png) no-repeat right 17px top 12px;
		background-size: 9px;
		padding: 10px 15px 10px 0;
	}

	/* ナビ
	---------------------------------------------- */
	.nav_footer{display: none;}

	/* ページトップボタン
	---------------------------------------------- */	
	#pagetop{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 60px;
		line-height: 1.2;
		background-color: #E3CF91;
		cursor: pointer;
	}

	#pagetop span{
		color: #FFF;
		font-size: 1.3rem;
		font-weight: bold;
		background: url("../img/ico_arrow02.png") no-repeat right center;
		background-size: auto 5px;
		padding-right: 20px;
	}


}/*--@media--*/


