@charset "utf-8";
/* CSS Document */

/*

		Theme Name:FSA2026
		
*/

@import url(css/common.css);
@import url(css/contents.css);
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700,900&display=swap&subset=japanese');
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
}
html {
	font-size: 62.5%;
} /* 10px */
body {
	color: #222;
	line-height: 1;
	font-size: 1.5rem;	
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;	
	font-feature-settings : "palt";
	font-weight: 500;
	}
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
p {
	line-height: 1.8;
}
th, td, dt, dd, li {
	line-height: 1.4;
}
input, select, textarea {
	vertical-align: middle;
}
input[type=text], textarea, input[type=tel], input[type=email] {
	padding: 7px;
	border: 1px solid #CCC;
	width: 100%;
}
input[type=text]{
margin-bottom: 10px;
}
input[type=text]:last-of-type {
margin-bottom: 0;
}
input[type=submit] {
	width: 180px;
	padding: 7px 0;
	background-color: #F08800;
	color: #FFF;
	font-size: 1.8rem;
	font-weight: bold;
	border: none;
	cursor: pointer;
}
input[type=submit]:hover, input[type=button]:hover {
	text-decoration: none;
	-webkit-transition: all .3s;
	transition: all .3s;
}
img {
	border: 0;
	vertical-align: middle;
	max-width: 100%;
	height: auto;
}
img.max {
	width: 100%;
}
object, embed {
	vertical-align: top;
}




/*──────────────────────────────────────────────────────
テーブル
──────────────────────────────────────────────────────*/
table {
	width: 100%;
	border-collapse:collapse;
	border-collapse: collapse;
	border-spacing: 0;
}
th, td {
	padding: 10px;
	vertical-align: text-top;
}
th {
	text-align: left;
	font-weight: normal;
}
.border {
	border-spacing: 0;
	border-top: 1px solid #CCCCCC;
	border-right: 1px solid #CCCCCC;
}
.border th {
	border-top: 0 solid #CCCCCC;
	border-right: 0 solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
}
.border td {
	border-top: 0 solid #CCCCCC;
	border-right: 0 solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
}
.border_bottom th, .border_bottom td {
	border-bottom: 1px solid #CCCCCC;
}
.dotted td, .dotted th {
	border-bottom: dotted 1px #999999;
}
.th_f9 {
	background-color: #fff;
	border-spacing: 0;
	border-top: 1px solid #CCCCCC;
	border-right: 1px solid #CCCCCC;
}
.th_f9 th {
	border-top: 0 solid #CCCCCC;
	border-right: 0 solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
	background-color: #F9F5EC;
}
.th_f9 td {
	border-top: 0 solid #CCCCCC;
	border-right: 0 solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
}

/*──────────────────────────────────────────────────────
リンク
──────────────────────────────────────────────────────*/
a {
	color: #222;
	text-decoration: none;
}
a:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	-webkit-transition: all .3s;
	transition: all .3s;
}
a.under {
	text-decoration: underline;
	color: #00A3D8;
}
.link a:before {
content: url("images/common/arw_orange-beta.png");
margin-right: 10px;
vertical-align: middle;
}

/*──────────────────────────────────────────────────────
余白
──────────────────────────────────────────────────────*/
.mt10 {
	margin-top: 10px;
}
.mt15 {
	margin-top: 15px;
}
.mt20 {
	margin-top: 20px;
}
.mt25 {
	margin-top: 25px;
}
.mt30 {
	margin-top: 30px;
}
.mt40 {
	margin-top: 40px;
}
.mt50 {
	margin-top: 50px;
}
.mt80 {
	margin-top: 80px;
}
.mr20 {
	margin-right: 20px;
}
.mr30 {
	margin-right: 30px;
}
.mr40 {
	margin-right: 40px;
}
.ml20 {
margin-left: 20px;
}
.ml40 {
margin-left: 40px;
}
.ml45 {
margin-left: 45px;
}
.ml65 {
margin-left: 65px;
}
.mb100 {
	margin-bottom: 100px;
}
.pd80 {
padding-top: 80px;
padding-bottom: 80px;
}
.pdt10 {
padding-top: 10px;
}
.pdb10 {
padding-bottom: 10px;
}

/*──────────────────────────────────────────────────────
テキスト
──────────────────────────────────────────────────────*/
.indent {
	padding-left: 1em;
	text-indent: -1em;
}
.t_right {
	text-align: right;
}
.t_center {
	text-align: center;
}
.t_left {
	text-align: left;
}
.v_top {
	vertical-align: text-top;
}
.v_center {
	vertical-align: middle;
}
.v_bottom {
	vertical-align: text-bottom;
}
.size12 {
	font-size: 1.2rem;
}
.size14 {
	font-size: 1.4rem;
}
.size16 {
	font-size: 1.6rem;
}
.size18 {
	font-size: 1.8rem;
}
.size20 {
	font-size: 2rem;
}
.size24 {
	font-size: 2.4rem;
}
.size28 {
	font-size: 2.8rem;
}
.size32 {
	font-size: 3.2rem;
}
.strong {
	font-weight: 900;
}
.strong14 {
	font-size: 1.4rem;
	font-weight: 900;
}
.strong18 {
	font-size: 1.8rem;
	font-weight: 900;
}
.strong20 {
	font-size: 2rem;
	font-weight: 900;
}
.strong24 {
	font-size: 2.4rem;
	font-weight: 900;
}
.strong28 {
	font-size: 2.8rem;
	font-weight: 900;
}
.strong32 {
	font-size: 3.2rem;
	font-weight: 900;
}
.normal {
	font-weight: normal;
}
.his {
	font-size: 70%;
	color: #B20000;
}
.marker {
	background: linear-gradient(transparent 0%, #ffff66 0%);
}
.cl_base {
	color: #FEF9E7;
}
.cl_main {
	color: #003894;
}
.cl_accent {
	color: #F08800;
}
.cl_gr {
	color: #999;
}
.line18 {
	line-height: 1.8;
}
.line12 {
line-height: 1.2;
}
.italic {
font-style: italic;
}
.min {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.gothic {
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}

/*──────────────────────────────────────────────────────
リスト
──────────────────────────────────────────────────────*/
ul, dl.ol {
	text-indent: 0;
}
.no-style li,
li.no-style {
list-style: none!important;
}
.decimal {
list-style-type: decimal;
}
.decimal li {
margin-bottom: 5px;
}
/*─ふり番号を好きなデザイン、位置に─*/
#Painting-flow ol {
list-style-type: none;
counter-reset: zero;/*─カウント関数（好きな名前）─*/
}
#Painting-flow ol li {
position: relative;
width: 300px;
height: 248px;
padding-top: 90px;
text-align: center;
font-size: 2.5rem;
font-weight: bold;
color: #DA620C;
background-image: url(../images/painting-bk.png);
background-size: cover;
counter-increment: zero;/*─カウント関数（好きな名前）─*/
}
#Painting-flow ol li::before {
position: absolute;
display: block;
content: counter(zero,decimal-leading-zero);/*─カウント関数（好きな名前）,01、02、03…─*/
/*─プロパティー参考
https://design-studio-f.com/blog/css-counter-automatic-numbering/
https://tombolo.jp/2018/04/994
─*/
font-size: 5rem;
font-weight: bold;
color: #fff;
top: -5px;
left: 15px;
}

ul li {
	list-style: none;
}
dd ul {
	margin-left: 20px;
}
.circle li {
	list-style-type: circle;
	margin-left: 1.5em;
}
.disc li {
	list-style-type: disc;
	margin-bottom: 10px;
}
.disc li:last-child {
	margin-bottom: 0;
}

/*//　①②③　*/
ol.circle-number {
counter-reset: my-counter;
  list-style: none;
  padding: 0;
}
 
ol.circle-number li {
		margin-left: 20px;
  position: relative;
}
ol.circle-number li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  display: block;
  float: left;
  line-height: 15px;
  margin-left: -20px;
  text-align: center;
		margin-top: 8px;
  height: 15px;
  width: 15px;
  border-radius: 50%;
		border: solid 1px #333;
		font-size: 1.1rem;
}

.gr-circle:before {
content: "●";
margin-right: 10px;
color: #75c8b8;
}

.gr_circle dt, .gr_circle li {
	margin-top: 15px;
	margin-left: 1.2em;
	text-indent: -1.2em;
}
.gr_circle dt:first-child, .gr_circle li:first-child {
	margin-top: 0;
}
p.gr_circle {
	margin-left: 1.2em;
	text-indent: -1.2em;
}
p.gr_circle:before, .gr_circle dt:before, .gr_circle li:before {
	content: "●";
	font-size: 13px;
	color: #85B200;
	margin-right: 5px;
	vertical-align: 6%;
}
.br_square li, .br_square dt {
	margin-top: 30px;
	margin-left: 1.5em;
	text-indent: -1.5em;
	font-weight: bold;
}
.br_square li li {
	margin-left: 0;
	margin-top: 15px;
	text-indent: 0;
	font-weight: normal;
}
.br_square li:before, .br_square dt:before {
	content: unset;
	content: "■";
	color: #A0D7EB;
	margin-right: 5px;
}
.br_square li li:before {
	content: "";
}
p.asterisk {
	margin-left: 1em;
	text-indent: -1em;
	font-size: 1.3rem;
}
p.asterisk:before {
	content: "※";
}
ul.asterisk li {
	list-style-type: none;
	margin-left: 1.5em;
	text-indent: -1.5em;
	font-size: 1.3rem;
}
ul.asterisk li:before {
	display: inline;
	content: "※";
}
.list_number li {
	list-style-type: decimal;
	margin-left: 1.5em;
	margin-bottom: 10px;
}
ol.parentheses li {
	list-style-type: none;
	list-style-position: inside;
	counter-increment: cnt;
	margin-left: 2.3em;
	text-indent: -2.2em;
	margin-bottom: 20px;
}
ol.parentheses li:last-child {
	margin-bottom: 0;
}
ol.parentheses li:before {
	display: marker;
	content: "(" counter(cnt) ")";
	margin-right: 10px;
	list-style: none;
}
ol.list_parentheses {
	margin: 0;
}
ol.list_parentheses li {
	list-style-type: none;
	list-style-position: inside;
	counter-increment: cnt;
	margin-left: 2.3em;
	text-indent: -2.2em;
}
ol.list_parentheses li:before {
	display: marker;
	content: "[" counter(cnt) "]";
	margin-right: 10px;
	list-style: none;
}
.disc dd {
margin-left: 1.5em;
	text-indent: -1.5em;
	line-height: 0.8;
	}
.disc dd:before {
content: "・";
font-size: 4rem;
margin-right: 5px;
vertical-align: middle;
}
.disc dd.disc-none {
margin-top: -25px;
margin-left: 0;
}
.disc dd.disc-none:before {
content: "";
}

.left-border {
	margin-left: 25px;
	border-left: solid 2px #85B200;
	padding: 5px 20px;
}
.bottom-border dt {
padding-top: 10px;
}
.bottom-border dd {
padding-left: 110px;
padding-top: 10px;
padding-bottom: 5px;
border-bottom: dotted 1px #999;
}
/*//　●●●：●●●●●　*/
.colon dt {
float: left;
clear: left;
width: 80px;
}
.colon dt:after {
content: "：";
}
.colon dd {
padding-left: 80px;
padding-bottom: 5px;
}

/*──────────────────────────────────────────────────────
ブロック
──────────────────────────────────────────────────────*/
.s_none {
	display: none;
}
.ip_none {
	display: none;
}
.p_none {
	display: block;
}
.sm_none {
	display: block;
}
.inner {
	max-width: 1040px;
	padding-left: 20px;
	padding-right: 20px;
	margin-left: auto;
	margin-right: auto;
}
.no-img {
background-image: none!important;
}
.flex_box {
	display: flex;
	flex-wrap: wrap;
}
.flex_between {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.flex_center {
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.flex_end {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
}
.item-center {
align-items: center;
}
.right {
	float: right;
}
.left {
	float: left;
}
.clear {
	clear: both;
}
.c_fix, .float {
	overflow: hidden;
}
.float li {
	float: left;
}
.float dt {
	float: left;
	clear: both;
}
.clearfix:after {
	content: ".";  /* 新しい要素を作る */
	display: block;  /* ブロックレベル要素に */
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearfix {
	min-height: 1px;
}
* html .clearfix {
	height: 1px;/*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}
.inline li {
	display: inline;
}
.block {
	display: block;
}
.in_block {
	display: inline-block;
}
img.aligncenter {
	display: block;
	margin: 15px auto;
}
.radius {
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.bk_yel {
	padding: 20px;
	background-color: #FEF9E7;
}
.bk_f5 {
	padding: 20px;
	background-color: #f5f5f5;
}
.bk_ee {
	padding: 20px;
	background-color: #EEE;
}
.border-bottom {
padding-bottom: 20px;
border-bottom: solid 1px #999;
}
.bk-ye {
  background: #FDFCDF; }
.bk-pk {
  background: #FDEDED; }

/*──────────────────────────────────────────────────────
レイアウト
──────────────────────────────────────────────────────*/
/*─-----繰返さない-----─*/
.col2s,
.col2 {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.col2s .box,
.col2 .box {
width: 48.5%;
}

/*─-----繰返す-----─*/
.col3,
.column2,
.column3,
.column4 {
display: flex;
flex-wrap: wrap;
}
.column4 li {
			width: calc((100% - 45px) / 4);
			margin: 0 15px 20px 0;
		}
.column4 li:nth-child(4n) {
			margin-right: 0;
}
		
.column3 li {
			width: calc((100% - 40px) / 3);
			margin: 0 20px 20px 0;
		}
.col3 section:nth-child(3n),
.column3 li:nth-child(3n) {
			margin-right: 0;
		}

.column3 li:last-child,
.column3 li:nth-last-child(2),
.column3 li:nth-last-child(3) {
    margin-bottom: 0;
}

.column2 li {
			width: calc((100% - 40px) / 2);
			margin-bottom: 40px;
}
.column2 li:nth-child(odd) {
			margin-right: 40px;
}
.column2 li:last-child,
.column2 li:nth-last-child(2) {
    margin-bottom: 0;
}

/*──────────────────────────────────────────────────────
横幅・box
──────────────────────────────────────────────────────*/
.wrap700 {
width: 70%;
margin-left: auto;
margin-right: auto;
}
.w16 {
width: 16.66%;
}
.w23 {
width: 23%;
}
.w37 {
width: 37%;
}
.w41 {
width: 41.66%;
}
.w49 {
width: 49%;
}
.w55 {
width: 55%;
}
.w60 {
width: 60%;
}
.w74 {
width: 74%;
}
.w80 {
width: 80%;
}


/*──────────────────────────────────────────────────────
デバイス
──────────────────────────────────────────────────────*/

@media (max-width:1024px){	
	
}

/*──────────────────────────────────────────────────────*/

@media (max-width:980px){	
	
}

/*──────────────────────────────────────────────────────*/

@media (max-width:768px) {
.s_none {
	display: none;
}
.ip_none {
	display: block;
}
.p_none {
	display: none;
}
.br_ipnone {
	display: block;
}
.sm_center {
	text-align: center;
}
.s_center {
	display: block;
	margin: auto;
	margin-bottom: 10px;
}
table {
	max-width: 98%;
	margin: auto;
}

/* 大きいサイズのテーブルはスマホではスクロールさせる
------------------------- */
.scroll-table-wrap {
	overflow-x: scroll;
	margin-top: 15px;
}
.scroll-table-wrap table {
	min-width: 700px!important;
	margin: 0;
}
.scroll-table-wrap:before {
content: url("images/common/ic_sw.png");
}
}

/*──────────────────────────────────────────────────────*/

@media (max-width:480px) {

.br_none {
	display: none;
}
.s_none {
	display: block;
}
.sm_none {
	display: none;
}
.c_fix .right, .c_fix .left {
	float: none;
	width: 100%;
}
.size24 {
	font-size: 1.8rem;
}
.size28 {
	font-size: 2rem;
}
.size32 {
	font-size: 2.4rem;
}
.strong24 {
	font-size: 1.8rem;
}
.strong28 {
	font-size: 2rem;
}
.strong32, .strong48 {
	font-size: 2.4rem;
}

.st25 {
margin-top: 25px;
}

.mt20 {
	margin-top: 15px;
}
.mt25 {
	margin-top: 20px;
}
.mt30 {
	margin-top: 25px;
}
.mt40 {
	margin-top: 30px;
}
.mt50 {
	margin-top: 35px;
}
.mt80 {
	margin-top: 40px;
}
ol li {
	text-align: left;
}


.col2 .box {
width: 100%;
}

.column4 li {
			width: calc((100% - 20px) / 2);
			margin: 0 20px 20px 0;
}
.column4 li:last-child,
.column4 li:nth-last-child(2)
{
margin-bottom: 0;
}
.column4 li:nth-last-child(3),
.column4 li:nth-last-child(4){
margin-bottom: 20px;
}
.column4 li:nth-child(2n) {
			margin-right: 0;
}	
.column3 section,
.column3 li {
width: 100%;
margin: 0 10px 20px;
}
.column3 section:nth-child(3n),
.column3 li:nth-child(3n) {
			margin-right: 10px;
}
.column3 li:last-child,
.column3 li:nth-last-child(2),
.column3 li:nth-last-child(3) {
    margin-bottom: 20px;
}

.column2 li {
width: calc((100% - 20px) / 2);
margin-bottom: 20px;
}
.column2 li:nth-child(odd) {
margin-right: 20px;
}

.column4 img,.column3 img,.column2 img {
width: 100%;
}
.wrap700,.w23,.w37,.w41,.w49,.w55,.w60,.w74 {
width: 100%;
}
table {
font-size: 1.4rem;
}
.border-bottom {
padding-bottom: 20px;
border-bottom: none;
}
.bottom-border dt {
width: 100%;
padding:8px;
background-color: #eee;

}
.bottom-border dd {
padding: 8px;
border-bottom: none;
}
}

/*追加───────────────────*/
.cl-red {
 color: #C20407;
}
.underline {
 text-decoration: underline;
}
.panel-group td.disc {
 padding-left: 1.5em;
 position: relative;
}
.panel-group td.disc::before {
 position: absolute;
 left: .3em;
 top: .3em;
 content: "・";
 font-size: 2.2rem;
 margin-right: .3em;
}
.panel-group .disc li {
	list-style-type: disc;
	margin-bottom: 10px;
 margin-left: 1em;
}
.ml1em {
 padding-left: 1em;
}
.allergic-substance-table table th,
.allergic-substance-table td {
 text-align: center;
 vertical-align: middle;
}
#allergic-specific .border th {
background-color: #003893;
color: #fff;
text-align: center;
}
.allergic-substance-table img {
 width: 60px;
}
#allergic-correspond tr:nth-child(even) {
 background-color: #f5f5f5;
}
.border-strong {
 border-bottom: solid 2px #999;
}
